我怎么能调用我自己的javascript API上我的SWF动态嵌入使用swobject

How can i invoke my own javascript API on my SWF dynamically embeded using swfOject?

本文关键字:动态 SWF swobject 我的 调用 怎么能 我自己 自己的 API javascript      更新时间:2023-09-26

我使用swfObject library来动态嵌入我在Flash CS5中制作的MP3播放器。在.fla文件中,我已经声明了一个可以通过Javascript调用的方法列表(使用flash.external.ExternalInterface flash类)。

这不是问题,因为所有这些功能在从Google Chrome的控制台调用时都能正常工作。然而,swfObject提供了一种方法来调用javascript API只有当.swf已经静态包括(即使用swfobject.registerObject()),但我找不到一种方法来实现同样的目标,当.swf动态包括(即使用swfobject.embedSWF())。

提前感谢您的帮助和贡献:)

当使用swfobject.embedSWF时,可以在attributes参数中指定swf对象的ID:

麻省理工。embedSWF(swfUrl, id,宽度,高度,版本,expressInstallSwfurl, flashvars, params, 属性, callbackFn)

的例子:

swfobject.embedSWF(
    "YourFlash.swf", "WhereToPlaceThis", "0px", "0px", "10.0.0",
    "expressInstall.swf", {}, {}, { id : "IdOfTheSWF" },
    function () {
         var SWF = document.getElementById("IdOfTheSWF"); // That's your SWF //
         SWF.yourFlashFunction(); // And you can invoke function //
    }
);