--- title: DocumentFragment.querySelector() slug: Web/API/DocumentFragment/querySelector translation_of: Web/API/DocumentFragment/querySelector ---
DocumentFragment.querySelector()
方法返回第一个在 {{domxref("DocumentFragment")}} 中的、符合选择器的元素。其使用深度优先,前序遍历规则遍历文档中的节点。如果没有匹配结果,返回 null
。
如果选择器中指定了 ID 而这个 ID 在当前文档(document)被错误地使用了多次,则返回第一个匹配的元素。
如果选择器无效,将抛出一个带有 SYNTAX_ERR
值的 {{domxref("DOMException")}} 异常。
element = documentfragment.querySelector(selectors);
在该示例中,将返回第一个位于 {{domxref("DocumentFragment")}} 的带有 "myclass
" 类的元素。
var el = documentfragment.querySelector(".myclass");
传递给 querySelector
的字符串参数遵循 CSS 语法。如果 ID 或选择器不符合 CSS 语法(比如使用了半角分号和空格),必须使用双反斜杠对字符做转义。
<div id="foo\bar"></div> <div id="foo:bar"></div> <script> document.querySelector('#foo\bar') // 啥也不匹配 document.querySelector('#foo\\\\bar') // 第一个DIV document.querySelector('#foo:bar') // 啥也不匹配 document.querySelector('#foo\\:bar') // 第二个DIV </script>
标准 | 状态 | 注释 |
---|---|---|
{{SpecName('Selectors API Level 2', '#queryselector', 'DocumentFragment.querySelector')}} | {{Spec2('Selectors API Level 2')}} | 无修改,与 {{SpecName('Selectors API Level 1')}} 相同 |
{{SpecName('Selectors API Level 1', '#queryselector', 'DocumentFragment.querySelector')}} | {{Spec2('Selectors API Level 1')}} | 最初的定义。 |
{{Compat("api.DocumentFragment.querySelector")}}