首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >querySelectorAll的IE9等效项

querySelectorAll的IE9等效项
EN

Stack Overflow用户
提问于 2012-11-01 13:04:12
回答 3查看 13.3K关注 0票数 5

我在FF或Chrome中没有遇到任何问题,但是IE9在这个方法上抛出了一个错误。我认为我可以使用它,因为它在这里已经被证明是受支持的:

http://www.quirksmode.org/dom/w3c_core.html

然而,在实践中似乎并非如此。话虽如此,我可以用什么来代替它呢?

编辑:下面是它失败的确切行:

代码语言:javascript
复制
var maximize_buttons = document.querySelectorAll(".maximize");

这是我第一次尝试使用querySelectorAll()。浏览器版本号为9.0.8112.16421

编辑(再次):我已经在两台不同的计算机上验证了这个错误。然而,他们有一个共同点--他们都在VMware上运行Windows7。这是相关的吗?

浏览器模式为IE9,但默认情况下文档模式设置为quirks。将其更改为Internet Explorer9标准解决了这个问题,但如果quirks是默认的,我仍然需要让它工作。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-11-15 06:49:34

您需要使用IE9的html5文档类型才能使用querySelectorAll() javascript方法。doctype看起来像这样,应该放在站点中所有页面的第一行。

代码语言:javascript
复制
<!DOCTYPE html>
票数 6
EN

Stack Overflow用户

发布于 2015-12-11 20:37:21

正如其他答案所建议的那样,这与怪癖与标准模式无关。

这与所谓的“兼容模式”有关。默认情况下,通过IE11的IE9对intranet站点使用“兼容模式”,并根据您的设置与其他站点使用“兼容模式”。

为了告诉IE你的站点实际上使用的是web标准,它也不应该妨碍自己:

  1. 更新服务器配置以发送带有值IE=EdgeX-UA-Compatible标头,或
  2. 将其作为meta标记添加到head元素标记的顶部:

<代码>G29

当然,你也应该有一个doctype,但是仅仅有一个doctype并不能解决兼容模式的问题。

票数 5
EN

Stack Overflow用户

发布于 2012-11-15 07:33:54

运行quirksmode模式就像运行非标准的IE6。

你必须,必须,必须(!)在每个超文本标记语言页面的顶部有一个文档类型:<!doctype html>

所有相关的(以及许多不相关的)浏览器都支持它。

没有它..。...well...怪异模式..。

你永远不会想要在怪异模式下运行任何东西,因为你永远不会知道什么样的JS/CSS/html5支持会突然消失或行为怪异……

所以别这么做。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13171247

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档