【问题标题】:document.querySelectorAll([classname]) not working in IE9 [duplicate]document.querySelectorAll([classname]) 在 IE9 中不起作用 [重复]
【发布时间】:2013-01-29 10:33:28
【问题描述】:

可能重复:
IE9 equivalent of querySelectorAll

我正在尝试在 IE9 中运行的某些 JS 中获取所有类名为“video”的元素。我正在使用var videopanels = document.querySelectorAll(".video");,它在 Chrome 中运行良好。

不幸的是,当我在调试器中观看 document.querySelectorAll(".video") 时遇到此错误:

document.querySelectorAll(".video")
Object doesn't support property or method 'querySelectorAll'
Error

但是,当我在调试器中观看document(它显示为DispHTMLDocument)并打开[Methods] 列表时,我明白了

querySelectorAll()
querySelectorAll(v)
IHTMLDOMChildrenCollection

发生了什么事?为什么我可以在调试器中看到它,但(显然)没有实际调用或使用它?

【问题讨论】:

    标签: javascript internet-explorer-9 getelementsbyclassname


    【解决方案1】:

    将您的文档类型更改为 html5 标准。

    <!DOCTYPE html>
    

    还要检查 IE9 是否在兼容模式下运行,因为这可能会导致它忽略它支持的某些方法。

    【讨论】:

    • 我的文档类型就是这样。
    • 原来我的浏览器已经切换到IE7兼容模式。我不记得这样做了,但这几乎肯定是问题所在。不过谢谢!
    • 是的,它需要处于标准模式:) 没有问题
    • @AndrewWyld 请检查此SO answer
    • 这不是我的问题的真正原因,所以我想我会让它们保持不变,因为它可以帮助人们了解这两个可能的原因。
    猜你喜欢
    • 2019-06-16
    • 2012-11-28
    • 2012-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-24
    • 1970-01-01
    相关资源
    最近更新 更多