2011-07-26 26 views
1

このスクリプトはIE8とFirefoxで動作しますが、IE7では "現在の"クラスや "スタイル"をクリアしません。誰でも知っている理由は?私は実際の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

関連する問題