2011-06-16 81 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

相關問題