2011-07-26 71 views
1

此腳本適用於IE8和Firefox,但它不適用「當前」類或清除IE7中的「樣式」。有人知道爲什麼當我出於安全目的將其複製到本地時,我用真正的ID替換了真正的ID和文件路徑。Internet Explorer 7 JavaScript問題?

var img = document.getElementById("imageID"); 
var div = document.getElementById("divID"); 

if (img.getAttribute('src') == "imagefilepath.gif") { 
div.className = "current"; 
div.setAttribute('style', ' '); 
} 
+1

什麼'img.getAttribute( 'SRC')'包含如果不是' 「imagefilepath.gif」'? –

+0

它可能包含許多不同的文件路徑。我有一個很長的IF塊,但我只是在這裏複製了頂部的IF語句。 – Michael

+1

IE 7(及更早版本)不支持'setAttribute'的'class'和'style'。 – Saxoier

回答

0

您可以使用此,在所有版本中會工作:

someId.setAttribute("className", "someClassName") || 
someId.setAttribute("class", "someClassName") 
1

看來,IE7包括在src屬性的完整路徑,你的條件沒有得到滿足。

http://jsfiddle.net/4E58r/1/

+0

嗯,我確實在實際腳本中使用了整個路徑。 「imagefilepath.gif」只是一個我替換的通用路徑,因爲我不想在這裏放置真正的文件路徑。 – Michael

+0

不,你說得對!謝謝。我做了一個包裹IF的包含塊,並修復它。 – Michael