所有浏览器都支持querySelector吗?

时间:2010-10-04 14:42:13

标签: javascript cross-browser selectors-api

我想知道所有浏览器都支持 querySelector 吗?它不是替代它使用的吗?

我已经用IE8,FF3,Chrome 4进行了测试。对我来说很好。我没有旧的浏览器。所以我想知道旧浏览器是否会给我带来问题?

5 个答案:

答案 0 :(得分:16)

IE7<不支持它和IIRC IE8有命名空间问题。至少还有一个深奥的浏览器存在重大问题,但我不记得它是什么。

基本上没有统一的基于表达式的DOM方法,绝对最好的办法就是使用一个库(无处不在的“使用jquery”答案,但如果遇到问题,至少应该查看Sizzle拥有大型图书馆)因为滚动你自己的努力比合理的价值更多(我从经验中说)。

答案 1 :(得分:8)

Firefox 3.1 +,IE8 +(仅限IE8标准模式)和Safari 3.1+浏览器支持QuerySelector。

supporting article

答案 2 :(得分:2)

我用FireFox进行了测试 - 这是完美的工作。 在IE中,当您使用带有quirk模式的文档(不使用DOCTYPE HTML)

时会出现问题

尝试在HTML文档中使用

答案 3 :(得分:1)

最佳替代方案是使用第三方库来抽象所有讨厌的浏览器特定代码,例如YUI或jQuery(我不熟悉Prototype等,所以我不能确定它是否使用query*方法[如果可用])。

答案 4 :(得分:1)

您可以查看MDN以获取详细信息。

| Feature       | Chrome |  Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
| ------------- | ------ | ---------------- | ----------------- | ----- | --------------- |
| Basic support |   1    |  3.5             |   8               | 10    |   3.2           |