我正在使用swfObject library
动态嵌入我在Flash CS5中制作的MP3播放器。在.fla
文件中,我已经声明了可以通过Javascript调用的方法列表(使用flash.external.ExternalInterface
flash类)。
这不是问题,因为从谷歌Chrome控制台调用时所有这些功能都能正常工作。
但是,只有.swf
包含静态(即使用swfobject.registerObject()
)时,swfObject才提供调用javascript API的方法,但我找不到实现相同方法的方法.swf
包含动态时的目标(即使用swfobject.embedSWF()
)。
提前感谢您的帮助和建议:)
答案 0 :(得分:1)
当您使用swfobject.embedSWF
时,您可以在attributes
参数中指定swf对象的ID:
swfobject.embedSWF(swfUrl,id,width,height,version,expressInstallSwfurl,flashvars,params, attributes ,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 //
}
);