Flash与Flex3结合学习心得体会
作者 凌众技术
来源 网页制作
浏览
发布时间 2012-03-09
很多商业网站中,都涉及到用同一个Flash来显示大量不同的内容(图片,视频或产品信息等),这就需要向这个Flash传递参数。常见的传参方法有三种,但都会受到AC_RunActiveContent.js的不良影响。 1 ExternalInterface: 这是困扰我最久的一个问题。据Adobe的描述,这是最好的传参方法,能都非常自由和直接地在AS和JS之间互相传递参数或者互相调用函数。但我在使用Adobe的示例文件时发现,在IE中AS无法得到JS的返回值(ExternalInterface在IE中的Bug),经过不断的尝试才发现是AC_RunActiveContent.js在捣鬼,只要把它和html中对应代码以及<noscript></noscript>删除就一切正常了。 请看示例: Player8,AS2: http://www.adamstudio.cn/lab/var/test/test_v8.html Player9,AS3: http://www.adamstudio.cn/lab/var/test/test_v9.html 如果带有激活ActiveX控件的那段JS代码,IE中就无法得到返回值,请看: http://www.adamstudio.cn/lab/var/test/test_error.html 所有源文件:http://www.adamstudio.cn/lab/var/test/test.rar 2 FlashVars: 3 URL传递参数 后两种方法受AC_RunActiveContent.js的影响更大,因为这两种方法都是在<noscript></noscript>之间加入代码,而在JS能运行的浏览器当中(绝大多数浏览器都能运行JS),这些代码根本就不会运行。所以无论在Firefox或者IE中都不起任何作用! 也就是说常用的三种在Html与AS之间传递参数的方法均受到激活ActiveX控件的那段代码的影响。所以要想在html和Flash之间传递参数,就必须摒弃Flash自带的激活ActiveX控件的方案! 替代方案:SwfObject 请参考SwfObject解决Html与Flash之间传递参数问题 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: Flash绘画技巧:透视和层次效果的阴影下一篇: Flash教程:广告也有记忆
关于Flash与Flex3结合学习心得体会的所有评论