2012-07-16 84 views
0

我正在做一個Javascript和jQuery動畫,並且它在所有瀏覽器中工作的很好,在Internet Explorer中較少,它顯示此警報:'0.width爲null或不是對象」看看這裏的代碼:http://jsfiddle.net/3y8cN/IE 0.width爲空或不是對象

這是一個動畫百分比吧,這不是在IE工作在Chrome就好了,但是,看起來,這個問題是在if

if (barracent[0].style.width != '0'){ 
    multiplier[0].innerHTML = value1+'%'; 
} 

如何我可以避免這個問題嗎?

是的,我知道我可以使用循環來避免那麼大的代碼,我會在稍後再做。 非常感謝提前。

+0

使用jQuery來選擇具有類而不是名稱的元素。使用每個來循環。 – epascarello 2012-07-16 18:00:24

回答

1

DIV不支持'name'屬性,所以document.getElementsByName('barracent')沒有返回IE中的任何元素(其他瀏覽器不能有這個限制)。請查看this answer瞭解有關此問題的更多詳細信息。

+0

哇,非常感謝,但在這種情況下,我應該使用QuerySelector按類來獲取它們,還是爲每個div使用一個ID?再次感謝! – 2012-07-16 17:56:12

+0

@HenriqueFoletto:這取決於你。無論哪種方式應該工作正常,但要一致:) – Briguy37 2012-07-16 18:07:22

+0

querySelectorAll無法在IE中正常工作,試圖用另一種方式來做到這一點。再次感謝 – 2012-07-16 18:31:20

相關問題