2013-06-25 108 views
0

工作在IE 8,這個腳本會產生錯誤:querySelectorAll的選擇 「不」 並不在IE 8

var ygakandiuppercase = document.querySelectorAll('input[type=text]:not(.noupper)'); 

但如果我刪除 「不」 條款是這樣的:

var ygakandiuppercase = document.querySelectorAll('input[type=text]'); 

其在IE 8上工作。

如何選擇文本輸入元素,除了指定的類名?

+1

使用jQuery/Sizzle並停止考慮瀏覽器兼容性。 –

回答

4

document.querySelectorAll只能在IE8中使用css2選擇器和以下版本。 :not是一個css3規範。因此,你的第一個腳本在IE8中失敗。你可以使用插件,如jquery這將掩蓋跨瀏覽器的問題或使用傳統的選擇器和手動過濾出來。

+0

謝謝你的解釋 – Prib