在彻底摒弃Adobe的激活ActiveX控件的方法一文中已经详细分析了使用Adobe提供的AC_RunActiveContent.js导致HTML与Flash之间不能传递参数的问题。经过Adobe论坛里GWD的提示,我转而寻求SwfObject的帮助。发现SwfObject是一个很好的解决方案。
SwfObject英文介绍:http://blog.deconcept.com/swfobject/
SwfObject中文翻译:http://www.awflasher.com/flash/articles/swfobj.htm
源文件:SWFObject 1.5
关于SwfObject的介绍上面两篇文章已经讲的很详细了。我这里只列一段标准的应用和一些上面两篇文章没有提到的问题.
Html中的JS代码
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
// <![CDATA[
var so = new SWFObject("asCallJs.swf", "MyDemo", "500", "400", "9", "#FF6600");
so.addVariable("param1", "Parameter1"); // this line is optional, but this example uses the variable and displays this text inside the flash movie
so.addVariable("param2", "Parameter2");
so.useExpressInstall('expressinstall.swf');
so.write("flashcontent");
// ]]>
</script><!--被AS调用的JS函数-->
<script language="Javascript">
// <![CDATA[
// adds two numbers, and sends the result back to ActionScript
function addNumbers(num1, num2)
{
result=num1 + num2;
alert("3+7=" + result);
return (result);
}
// ]]>
</script>
Flash中的AS代码
//****************调用JS函数,得到返回值*****************
var n1:uint = 3;
var n2:uint = 7;
if (ExternalInterface.available) {
var res:uint = ExternalInterface.call(”addNumbers”, n1, n2);
function_txt.text=”3+7=”+res.toString();
}
//****************直接得到JS中参数****************
//AS2中做法
//param1_txt.text=param1;
//AS3中做法
param1_txt.text=this.loaderInfo.parameters.param1;
param2_txt.text=this.loaderInfo.parameters.param2;
注:如果要在AS3中用OOP来操作的话,需要专门构建一个类,用它其中的静态变量来存储全局变量,要使用这些变量的类先继承它(Storing SWFObject.addVariable() vars globally in AS3)。
分享到:
相关推荐
SWFObject: 基于Javascript的Flash媒体版本检测与嵌入模块 SWFObject: 基于Javascript的Flash媒体版本检测与嵌入模块 SWFObject: 基于Javascript的Flash媒体版本检测与嵌入模块
swfobject+swffit实现flash嵌入网页自适应大小
swfobject 2.2 去除网页Flash(SWF文件)的虚线框 swfobject 2.2 去除网页Flash(SWF文件)的虚线框
2、使用swfObject向页面中插入Flash文件。 3、使用Flash中的ExternalInterface.call方法和fscommand方法对JS进行调用与传送数据。 4、使用Flash中的ExternalInterface.addCallback方法创建接口,使JS能够调用AS中的...
SWFObject.js Flash性能增强插件,可用于网站大型flash展示页面。
SWFObject是一个用于在HTML中方便插入Adobe Flash媒体资源(*.swf文件)的独立、敏捷的JavaScript模块。该模块中的JavaScript脚本能够自动检测PC、Mac机器上各种主流浏览器对Flash插件的支持情况。它使得插入Flash...
插入flash代码 ,可以直接设置flash的参数
问题:如何使用javascript向SWF文件传递参数? 在网上找了一个完整的教程,很有启发性和实用性,如下是完整实现的步骤: 配置SwfObject: Swfobject2是目前检测用户是否安装Flash的最佳方法。它被认为是‘行业标准’...
swfobject.js为2.2版本,判断用户flash player版本,向swf传递参数等。 swfaddress.js的作用是在不刷新网页的情况下为地址栏更换地址,并可实现访问这个地址时也同时接受到参数。注:除js文件外请详细看.fla文件,...
swfobject.js代替JavaScript实现点击按钮显示Flash动画 swfobject.js代替JavaScript实现点击按钮显示Flash动画
flash swfobject.js实例360室内装饰图片全景查看
SWFObject 插件 用于 html 引入 flash 插件
怎样用SWFObject 2.0的静态发表方法来嵌入Flash内容 o 5-1 . 第一步:用符合标准的标签同时嵌入Flash内容和替换内容 o 5-2 . 第二步:在HTML的head标签中包括SWFObject的JavaScript类库 o 5-3 . 第三步:用...
HTML插入Flash的全兼容完美解决方案-SWFObject
使用.js方式将flash嵌入web页面,内含示例及源码!
swfobject 网页载入flash swf JavaScript 代码
最近看到了好几个Flash网站,head代码里都加载了一个swfobject.js,这个JS究 竟有什么作用呢?眼下正在做一个Web页面,说不定刚好可以派上用场。于是,好奇的搜索了一下。原来这是老外开发的,用于在HTML中方面插入...
SWFObject,新的swf嵌入方法,支持标准HTML语法
swfobject_modified.js