我第一次来这里。
我的问题是AS3,Javascript以及Firefox和IE浏览器。
我已经做了很多寻找答案,所以我将打印我的代码:
我正在使用这一行来调用flash应用程序,并且在所有浏览器中它的combatible并且实际上在firebug中跟踪以保持OBJECT-> FLASH_ID,这样就没有问题了。
var obj = document.getElementById('test');
然后我使用addcallback:
obj.sendStatus(loggedIn);
现在奇怪的是我用铬和
追踪所有个别元素一切都很好,但当我在Firefox或ie 它的痕迹不同
现在我错过了什么???????????
答案 0 :(得分:0)
我知道一些与浏览器相关的计时问题,使flash对象的界面可用......
计时器可以提供帮助,试试这个:
var obj = document.getElementById('test');
setTimeout(function(){obj.sendStatus(loggedIn);}, 500);
500有点长,但只是为了确定。如果它有效,你可以尝试将其降低到200 - 300。
答案 1 :(得分:0)
确保在embed标记和object标记中声明了allowScriptAccess = sameDomain 如果你不使用swfObject
也许你对瑞士法郎的引用方式是错误的,试试这个
function thisMovie(movieName) {
if (navigator.appName.indexOf("Microsoft") != -1) {
return window[movieName];
} else {
return document[movieName];
}
}
答案 2 :(得分:0)
问题是,使用ExternalInterface
需要双方(browser
和flash
)做好准备。
您可以在页面中使用flash轮询一个方法,该方法只返回true,以便您知道它已准备好接收来自flash的调用。
另一方面,如果页面被缓存,有时可能会发生页面想要在闪存准备好之前发送到闪存,所以我使用回调页面告诉它闪存准备就绪,所以它像握手一样,一旦双方都准备就绪,我们就可以开始来回发送数据了。
这是自Firefox 3以来我的方法。