2010-07-01 69 views
1

這兩個選擇器在Internet Explorer 8中不工作(它們在Firefox,Safari和Chrome中可以正常工作)。jQuery選擇器不能在IE中工作

$(this.children).stop().animate({ color: "#4B2B26" }, 300); 
$(this).find('a').stop().animate({ color: "#4B2B26" }, 300); 

幫助表示讚賞,謝謝!

編輯;我認爲這是jquery.js的問題。每次我將鼠標懸停在一個對象上時,調試器都會顯示出來; 「無效的參數,Jquery.js行137代碼0」。

現在我有;

$("a", this).stop().animate({ 'color': '#CEEAE6' }, 300); 

也不能在IE中工作。

但這一個在IE中工作正常;

$("h3", this).stop().animate({ 'border-bottom': '5px solid #CEEAE6' }, 0); 
+0

祝你好運,我希望你得到這一個整理出來 – 2010-07-01 15:38:28

+0

如果你顯示更多的代碼可能會有所幫助。比如你已經發布的代碼。 – 2010-07-01 17:02:10

回答

1

關於第二個規則不知道,但對於第一條規則,你可以試試這個:

$(this).children().stop().animate({ color: "#4B2B26" }, 300); 

。孩子()是一個jQuery方法,從而獨立於瀏覽器。 「this.children」返回當前「this」的任何兒童財產。不知道這是否甚至是IE中DOM元素的受支持屬性。使用「this.childNodes」也可能在這裏做的伎倆,但也可能不是瀏覽器獨立...

+0

@ TomGrohl; IE8提供「無效參數,Jquery.js行137代碼0」。我沒有更改默認的jquery文件。 @Koen;試過這一個,它不適用於所有的瀏覽器。 – Jeroen 2010-07-01 15:48:17

+0

好吧.. Koen建議好東西..我忘了在孩子後加()。但它仍然不能在IE中工作。 :S – Jeroen 2010-07-01 15:51:06

+0

我已經更新了我的答案。不確定這會解決你的問題。 – 2010-07-01 15:53:00