2013-06-25 67 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