2011-06-16 101 views
0

有谁知道为什么我会收到错误消息“对象不支持此属性或方法” - 这会阻止我的网站在IE6,7 ,8 - 它适用于所有其他浏览器!我认为有问题的代码是:“对象不支持此属性或方法”在Internet Explorer中

<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(); 

}

<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> 
<div id="slideshow-counter"></div> 
<a href="#" name="btn" onClick="stopFlash()"><div id="slideshow-first"></div></a> 
<div id="slideshow-first-tint"></div> 
</div> 


<script language="javascript"> 
if (AC_FL_RunContent == 0) { 
    alert("This page requires AC_RunActiveContent.js."); 
      } else { 
    AC_FL_RunContent(
     'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0', 
     'width', '747', 
     'height', '420', 
     'src', 'blank1', 
     'quality', 'high', 
     'pluginspage', 'http://www.macromedia.com/go/getflashplayer', 
     'align', 'middle', 
     'play', 'false', 
     'loop', 'true', 
     'scale', 'showall', 
     'wmode', 'opaque', 
     'devicefont', 'false', 
     'id', 'blank1', 
     'bgcolor', '#ffffff', 
     'name', 'blank1', 
     'menu', 'true', 
     'allowFullScreen', 'false', 
     'allowScriptAccess','sameDomain', 
     'movie', 'blank1', 
     'salign', '' 
     ); //end AC code 
} 
</script> 
<noscript> 
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"  codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="747"  height="420" id="blank1" align="middle"> 
<param name="allowScriptAccess" value="sameDomain" /> 
<param name="allowFullScreen" value="false" /> 
<param name="movie" value="blank1.swf" /><param name="quality" value="high" /><param name="bgcolor" value="#ffffff" /><embed src="blank1.swf" quality="high" bgcolor="#ffffff" width="747" height="420" name="blank1" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /> 
</object> 

感谢您的任何反馈!

+0

commandFlash()在哪里定义? – kinakuta 2011-06-16 19:48:08

+0

代码中的某处,您访问了一个不存在的属性或方法 – 2011-06-16 19:53:57

+0

谢谢,我已经使用Flash脚本更新了该帖子(对不起) – Dave 2011-06-16 19:56:32

回答

1

没有元素idnameblank1blank2blank3 ..?

编辑:此功能:

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

} 

真的是过时的,海事组织和依赖于一些怪癖模式行为,其中一个页面的ID /名称使它的window属性。我建议改变它为:

function getFlashMovie(id) { 
    return document.getElementById(id); 
} 

这应该返回正确的元素/引用。

+0

对不起!我已经使用Flash脚本更新了这篇文章。谢谢。 – Dave 2011-06-16 20:20:05

+0

更新了答案。 – 2011-06-16 20:24:57

+0

谢谢Meder,但仍然得到同样的问题(至少与其一致)! – Dave 2011-06-16 20:33:42

相关问题