Javascript:从Flash(swfObject)调用javaScript函数?

标签 javascript actionscript-3 flash function-calls

假设我有一个名为“data”的对象,它有一个名为“closeItem”的回调函数,它可以执行某些操作。

所以我有一个带有关闭按钮的 Flash 文件。单击该按钮后,我将调用此函数来关闭此项目。

那么问题是?

如果我将此“closeItemFunction”作为全局函数传递,则效果很好。

但是如果将此函数作为“data.closeItem”传递,则不会抛出一些错误错误。

所以我只是想问一下

<小时/>

“Flash 是否只调用全局作用域的 javascript 函数” ??

最佳答案

您可以将要执行的 JavaScript 包装在您声明并从 ActionScript 调用的匿名函数中,如下所示:

ExternalInterface.call("function() { data.closeItem(); }");

使用上述语法调用、执行该函数可能看起来有点奇怪,确实如此,但如果您愿意,可以使声明和单独调用更明确,如下所示:

ExternalInterface.call("(function() { data.closeItem(); })()");

关于Javascript:从Flash(swfObject)调用javaScript函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9495146/

相关文章:

javascript - 检查数组是否有大于指定的数字

javascript - 有 Angular ;错误: Component NewPharmacyComponent is not part of any NgModule or the module has not been imported into your module

actionscript-3 - 如何以静默方式预加载带有声音的影片剪辑?

apache-flex - 在 DisplayObjectContainer 上调用 addChild 或 removeChild 方法时会发生什么?

java - 如何在 jsf 应用程序中将 PowerPoint 文件的一张幻灯片转换为 flash(使用 javaSE/javaEE)?

actionscript-3 - 如何从子 Slider 动画片段访问父对象中定义的对象

javascript - Angularjs。如何获取全局 jquery 对象和其他(jQuery 插件/Angularjs 东西!)?

javascript - 无法从自定义指令呈现 templateUrl

Java AES-256 解密 - 从 ActionScript 3 翻译代码

flash - 在 Flash Professional CS6 中为 Flash 10.1 编译