swfobject无法与html通信

| 我在尝试获取swfobject嵌入式文件与我的html通信时遇到麻烦。当我使用AC_RunActiveContent以标准方式嵌入swfs时,它起作用了,为什么会这样呢?基本上,底部的导航按钮在单击时停止播放swf。我非常感谢您的帮助!
<script type=\"text/javascript\" src=\"js/swfobject.js\"></script>

<script type=\"text/javascript\">
var flashvars = {};
var params = {};
params.play = \"true\";
params.loop = \"false\";
params.menu = \"true\";
params.quality = \"high\";
params.scale = \"showall\";
params.wmode = \"opaque\";
params.bgcolor = \"#ffffff\";
params.devicefont = \"false\";
params.allowscriptaccess = \"always\";

var attributes = {};
swfobject.embedSWF(\"images/blank1.swf\", \"blank1\", \"747\", \"420\", \"9.0.0\", flashvars, params, attributes);
swfobject.embedSWF(\"images/blank2.swf\", \"blank2\", \"747\", \"420\", \"9.0.0\", flashvars, params, attributes);
swfobject.embedSWF(\"images/blank3.swf\", \"blank3\", \"747\", \"420\", \"9.0.0\", flashvars, params, attributes);
</script>


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

function stopFlash(){
    getFlashMovie(\"blank1\").commandFlash();
    getFlashMovie(\"blank2\").commandFlash();
    getFlashMovie(\"blank3\").commandFlash();
}
HTML:
<div>
    <object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\"747\" height=\"420\">
    <param name=\"movie\" value=\"images/blank1.swf\" />
    <!--[if !IE]>-->
    <object type=\"application/x-shockwave-flash\" data=\"images/blank1.swf\" width=\"747\" height=\"420\">
    <!--<![endif]-->
    <img src=\"images/blank1.jpg\" alt=\"\" width=\"747px\" height=\"420px\" />
    <!--[if !IE]>-->
    </object>
    <!--<![endif]-->
    </object>
</div>

<div id=\"navigation\">
<a href=\"#\" name=\"btn\" onClick=\"stopFlash()\"><div id=\"slideshow-previous\"></div></a>
<a href=\"#\" name=\"btn\" onClick=\"stopFlash()\"><div id=\"slideshow-next\"></div></a>
<a href=\"#\" name=\"btn\" onClick=\"stopFlash()\"><div id=\"slideshow-first\"></div></a>
</div>
感谢您的任何反馈!     
已邀请:
        在您的SWF文件中,您是否导入了flash.external.ExternalInterface? 如果没有,则需要这样做,然后在SWF中公开\ commandFlash方法。您可能也需要在您的域上允许这种通信。
import flash.external.ExternalInterface;

System.security.allowDomain(\'*\');
var flashAvailable:Boolean = ExternalInterface.available;

ExternalInterface.addCallback(\'commandFlash\', null, commandFlash);
function commandFlash( args... ){
  //
}
除上述以外,也许您的SWF用display:none;隐藏了。在页面上的某个时候,然后显示出来?过去,这在Firefox中给我带来了一些陌生感。 (不确定您是否在SWF中使用AS2 / 3)     
        您的SWFObject代码有错误:它缺少express install参数。
swfobject.embedSWF(\"images/blank1.swf\", \"blank1\", \"747\", \"420\", \"9.0.0\", \"expressinstall.swf\", flashvars, params, attributes);
swfobject.embedSWF(\"images/blank2.swf\", \"blank2\", \"747\", \"420\", \"9.0.0\", \"expressinstall.swf\", flashvars, params, attributes);
swfobject.embedSWF(\"images/blank3.swf\", \"blank3\", \"747\", \"420\", \"9.0.0\", \"expressinstall.swf\", flashvars, params, attributes);
当然,您需要用expressinstall.swf文件的正确路径替换\“ expressinstall.swf \”。如果您不想使用快速安装,只需输入a4ѭ布尔值即可。
swfobject.embedSWF(\"images/blank1.swf\", \"blank1\", \"747\", \"420\", \"9.0.0\", false, flashvars, params, attributes);
swfobject.embedSWF(\"images/blank2.swf\", \"blank2\", \"747\", \"420\", \"9.0.0\", false, flashvars, params, attributes);
swfobject.embedSWF(\"images/blank3.swf\", \"blank3\", \"747\", \"420\", \"9.0.0\", false, flashvars, params, attributes);
    
        排序-设法解决(见下文),感谢大家的投入/支持! 现在唯一的问题是Internet Explorer在触发stopFlash命令的按钮上返回错误“对象不支持此属性或方法”,但至少仍然可以使用。 rr
var flashvars = {};
var params = {wmode:\"opaque\", allowscriptaccess:\"always\" };
var attributes = {};

swfobject.embedSWF(\"images/clients/blank1.swf\", \"blank1\", \"747\", \"420\", \"9.0.0\", false, flashvars, params, attributes);
swfobject.embedSWF(\"images/clients/blank2.swf\", \"blank2\", \"747\", \"420\", \"9.0.0\", false, flashvars, params, attributes);
swfobject.embedSWF(\"images/clients/blank3.swf\", \"blank3\", \"747\", \"420\", \"9.0.0\", false, flashvars, params, attributes);


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


function stopFlash(){
getFlashMovie(\"blank1\").commandFlash();
getFlashMovie(\"blank2\").commandFlash();
getFlashMovie(\"blank3\").commandFlash();
return true;
}
    

要回复问题请先登录注册