ActionScript 3 JavaScript通信:对象#没有方法

|| 我正在尝试从Javascript调用Actionscript 3方法,但是Chrome出现以下错误:   对象#没有   方法 我将SWF放在页面上,如下所示:
<embed type=\"application/x-shockwave-flash\" src=\"/subfolder/flash.swf\" width=\"550\" height=\"400\" id=\"myFlash\" name=\"myFlash\" bgcolor=\"#FFFFFF\" quality=\"high\" />
动作3代码:
function query(fn:String, ln:String):void {
    a_txt.text = fn + \" \" + ln;
}
ExternalInterface.addCallback(\"queryFlash\", query);
最后是Javascript:
function getFlashMovie(movieName) {
      var isIE = navigator.appName.indexOf(\"Microsoft\") != -1;
      return (isIE) ? window[movieName] : document[movieName];
    }
$(document).ready(function() {
    getFlashMovie(\"myFlash\").queryFlash(\"a\", \"b\");
});
我在这里想念什么吗?     
已邀请:
        jQuery的“ 3”对应于“ 4”事件。这意味着HTML页面已完成加载,您可以访问DOM-但这不能保证您所有嵌入式图像和对象均已加载完毕。因此,您的Flash可能根本还没有加载。您应该改为监听窗口的
load
事件。     
        即使它可能无法解决您的问题,但我在使用Chrome时遇到了类似的问题。 解决方法是更换
document.getElementById(\'flash\').sendToActionscript(\'test\');
((function(){return document.getElementById(\'flash\');})()).sendToActionscript(\'test\');
如果embed / object的id属性为
flash
,并且在flash内部调用的函数为
sendToActionScript
我不知道为什么会这样。 编辑 这似乎并不总是有效。我发现使用swfobject创建对象似乎总是对我有用。     

要回复问题请先登录注册