--- title: TreeWalker slug: Web/API/TreeWalker tags: - API - DOM translation_of: Web/API/TreeWalker ---
{{ APIRef("DOM") }}
TreeWalker
对象用于表示文档子树中的节点和它们的位置。
TreeWalker
可以使用 {{domxref("Document.createTreeWalker()")}} 方法创建。
这个接口不继承任何属性。
TreeWalker
时所声明的根节点。unsigned long
类型的常量位掩码,表示需要筛选的{{domxref("Node")}} 类型。不匹配的节点会跳过,但其子节点,如果符合条件,则也会被包含。可能的值如下:
常量 | 数字值 | 描述 |
---|---|---|
NodeFilter.SHOW_ALL |
-1 (that is the max value of unsigned long ) |
显示所有节点。 |
NodeFilter.SHOW_ATTRIBUTE {{deprecated_inline}} |
2 |
显示{{ domxref("Attr") }}节点,这意味着使用{{ domxref("TreeWalker") }}访问 {{ domxref("Attr") }}节点时,需要让这些节点处于遍历的开始位置。这是因为这些节点不是任何节点的后代,并不处于文档树之上。 |
NodeFilter.SHOW_CDATA_SECTION {{deprecated_inline}} |
8 |
显示 {{ domxref("CDATASection") }}节点。 |
NodeFilter.SHOW_COMMENT |
128 |
显示 {{ domxref("Comment") }} 节点。 |
NodeFilter.SHOW_DOCUMENT |
256 |
显示 {{ domxref("Document") }} 节点。 |
NodeFilter.SHOW_DOCUMENT_FRAGMENT |
1024 |
显示 {{ domxref("DocumentFragment") }} 节点。 |
NodeFilter.SHOW_DOCUMENT_TYPE |
512 |
显示 {{ domxref("DocumentType") }} 节点。 |
NodeFilter.SHOW_ELEMENT |
1 |
显示 {{ domxref("Element") }} 节点。 |
NodeFilter.SHOW_ENTITY {{deprecated_inline}} |
32 |
显示{{ domxref("Entity") }}节点,这意味着使用{{ domxref("TreeWalker") }}访问 {{ domxref("Entity") }}节点时,需要让这些节点处于遍历的开始位置。这是因为这些节点不是任何节点的后代,并不处于文档树之上。 |
NodeFilter.SHOW_ENTITY_REFERENCE {{deprecated_inline}} |
16 |
显示 {{ domxref("EntityReference") }} 节点。 |
NodeFilter.SHOW_NOTATION {{deprecated_inline}} |
2048 |
显示{{ domxref("Notation") }}节点,这意味着使用{{ domxref("TreeWalker") }}访问 {{ domxref("Notation") }}节点时,需要让这些节点处于遍历的开始位置。这是因为这些节点不是任何节点的后代,并不处于文档树之上。 |
NodeFilter.SHOW_PROCESSING_INSTRUCTION |
64 |
显示 {{ domxref("ProcessingInstruction") }} 节点。 |
NodeFilter.SHOW_TEXT |
4 |
显示 {{ domxref("Text") }} 节点。 |
TreeWalker
当前指向的{{domxref("Node")}}。这个接口不继承任何方法。
注意:对于TreeWalker
,一个节点是否可见只取决于whatToShow
和 filter
两个参数(和元素是否在屏幕上可见无关)
规范 | 状态 | 注释 |
---|---|---|
{{SpecName('DOM WHATWG', '#interface-treewalker', 'TreeWalker')}} | {{Spec2('DOM WHATWG')}} | Removed the expandEntityReferences property. |
{{SpecName('DOM2 Traversal_Range', 'traversal.html#Traversal-TreeWalker', 'TreeWalker')}} | {{Spec2('DOM2 Traversal_Range')}} | Initial definition. |
{{Compat("api.TreeWalker")}}