假设我有一个名为“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/