Actionscript3到JavaScript的沟通:最佳实践

一个更抽象的层面上,然后是 a previous question,根据我的经验,有三种方法可以使用AS3从外部.swf调用html页面上的javascript函数:ExternalInterface,fscommand和navigatetoURL.

让我们比较和对比这些方法(也许还有其他我没有列出的)并讨论每种方法的优点和缺点 – 现在,ExternalInterface似乎是灵活性的方式,但是它适合所有情况吗?在执行速度方面是否有具体的好处或类似的东西?我很好奇 – 我们怎么想?

解决方法

创建ExternalInferface是为了使JS和Flash之间的通信更容易,因此使用其他任何东西都没有意义.通常的做法是在调用某些JS之前通过评估ExternalInterface.available属性的值来检查它是否可用.此属性告诉您是否要在其中调用某些JS的SWF位于提供外部接口的容器内.换句话说,如果使用ExternalInterface将起作用.如果它不可用,那么只需使用flash.net.sendToUrl.永远不要使用fscommand(),因为它使用VBScript并且可能导致与页面上的其他VBScript冲突.此外,您只能使用fscommand发送一个参数字符串,并且必须在JS端将其拆分.

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...