DocumentFragment: querySelector() 方法

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

DocumentFragment.querySelector() 方法会在 DocumentFragment 中(使用深度优先的预序遍历文档节点)查找与指定选择器组匹配的第一个元素,如果找不到匹配项,则返回 null

如果选择器匹配一个 ID,并且该 ID 在文档中被错误地使用了多次,它将返回第一个匹配的元素。

如果参数中指定的选择器无效,则会引发一个具有 SYNTAX_ERR 值的 DOMException

语法

js
querySelector(selectors)

参数

选择器 (selectors)

包含一个或多个由逗号分隔的 CSS 选择器的字符串。

返回值

一个 Element 对象,代表文档中与指定的 CSS 选择器 匹配的第一个元素;如果没有匹配项,则返回 null

示例

基本示例

在这个基本示例中,将返回 DocumentFragment 中第一个具有 myclass 类的元素。

js
const el = documentfragment.querySelector(".myclass");

CSS 语法和方法的参数

传递给 querySelector 的字符串参数必须遵循 CSS 语法。要匹配 ID 或不遵循 CSS 语法的选择器(例如,不恰当地使用分号或空格),必须用双反斜杠转义错误字符。

html
<div id="foo\bar"></div>
<div id="foo:bar"></div>
js
document.querySelector("#foo\bar"); // Does not match anything
document.querySelector("#foo\\\\bar"); // Match the first div
document.querySelector("#foo:bar"); // Does not match anything
document.querySelector("#foo\\:bar"); // Match the second div

规范

规范
DOM
# ref-for-dom-parentnode-queryselector①

浏览器兼容性

另见