2012-01-21 12 views
0

Firefoxが私のプログラムでJavaScriptコードを無視しているようです。次のコードは、要素#navi li aの背景位置を変更するために使用され、表示されるforループは画像とテキストを変更するタイマーの一部です。 #navi(スプライト)の背景位置を指定します。この問題は、(j === count)の条件になったときに発生します。 Firefoxは最初のbackgroundPositionプロパティを認識し、スプライトを-12ピクセルに設定しますが、その要素がアクティブでなくなったときに設定します。スプライトが2つの円の11 x 24ピクセルであることをよりよく理解するために、0の円は黄色またはアクティブで、0〜12の円は白または非アクティブです。 Firefoxはタイマーの進行に伴ってすべての円を黄色に変更しますが、もはやアクティブになっていないときには白にリセットしません。 IE6とSafariのコードは意図したとおりに動作しますが、Firefoxは現在のところこの問題の唯一のブラウザです。FirefoxがJavascriptを無視していますelement.style.backgroundPosition

for (j=1;j<4;j++){ 

    if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){ 
     var ieversion=new Number(RegExp.$1) 
     if (ieversion>=6){ 
      document.getElementById("navi"+j).style.backgroundPosition = "0 -12";      
      document.getElementById("image_description"+j).style.visibility = "hidden"; 
     } 
    } else if (/Firefox[\/\s](\d+\.\d+)/.test(navigator.userAgent)){ 
     var ffversion=new Number(RegExp.$1) 
     if (ffversion>=3){ 
      document.getElementById("navi"+j).style.backgroundPosition = "0 -12";      
      document.getElementById("image_description"+j).style.visibility = "hidden"; 
     } 
    } else { //Safari 
      document.getElementById("navi"+j).style.backgroundPosition = "bottom bottom";         
      document.getElementById("image_description"+j).style.visibility = "hidden";  
    } 

    if (j===count){ 

      if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){ 
       var ieversion=new Number(RegExp.$1) 
       if (ieversion>=6){ 
        document.getElementById("navi"+j).style.backgroundPosition = "0 0";   
        document.getElementById("image_description"+j).style.visibility = "visible"; 
       } 
      } else if (/Firefox[\/\s](\d+\.\d+)/.test(navigator.userAgent)){ 
       var ffversion=new Number(RegExp.$1) 
       if (ffversion>=3){ 
        document.getElementById("navi"+j).style.backgroundPosition = "0 0";     
        document.getElementById("image_description"+j).style.visibility = "visible"; 
       } 
      } else { //Safari 
       document.getElementById("navi"+j).style.backgroundPosition = "top top";   
       document.getElementById("image_description"+j).style.visibility = "visible";     
      }    
     } 
    } 
+0

はの可能重複しているように見えますか? – Hello71

答えて

関連する問題