gpt4 book ai didi

javascript - 外部接口(interface)在 IE 中不起作用

转载 作者:行者123 更新时间:2023-11-30 09:09:46 35 4
gpt4 key购买 nike

我正在尝试从 javascript 调用 flash 对象中的操作:

作为:

function testExternalConnection(str:String):Void {
_root.debug.htmlText = "testExternalConnection ok";
}
ExternalInterface.addCallback("testExternalConnection", this, testExternalConnection);

js:

var movie = getFlashMovie("ap1_mod_hidden")
movie.testExternalConnection();

function getFlashMovie(movieName) {
var isIE = navigator.appName.indexOf("Microsoft") != -1;
return (isIE) ? window[movieName] : document[movieName];
}

我使用 swfobject 包括我的 flash:

<span id="ap1_mod_hidden"></span>
<script type="text/javascript">
// Setting up the flash player
var flashvars = {
mp3Path: "stop",
artistName : "",
trackName : ""
};
var params = {
codebase: 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0',
src: '/flash/ap1_mod.swf',
quality: 'high',
pluginspage: 'http://www.macromedia.com/go/getflashplayer',
scale: 'showall',
devicefont: 'false',
bgcolor: '#999999',
name: 'ap1_mod',
menu: 'true',
id: 'mod',
allowFullScreen: 'false',
allowScriptAccess:'always', //sameDomain
movie: '/flash/ap1_mod.swf',
wmode: "transparent",
allowfullscreen: "true"
};

swfobject.embedSWF("/flash/ap1_mod.swf", "ap1_mod_hidden", "300", "300", "9.0.0", false, flashvars, params);
</script>

这里没有什么疯狂的。所以这段代码在所有情况下都能正常工作,但在 Internet Explorer 中却不行(真令人惊讶:\)。它正在正确获取电影对象,但无法调用外部接口(interface)函数。它说该属性未定义。

我查看了 google 和 SO 但没有成功...任何帮助将不胜感激!

最佳答案

我相信你想使用 id,而不是你添加 swf 的 div,所以:

function getFlashMovie(movieName) {
return swfobject.getObjectById("mod");
}

因为您将“mod”设置为 id。

关于javascript - 外部接口(interface)在 IE 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1166079/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com