-
public interface NodeIterator
NodeIterators
用于遍历一组节点,例如NodeList
的节点集,由特定Node
管理的文档子树,查询结果或任何其他节点集。 要迭代的节点集由NodeIterator
的实现确定。 DOM Level 2指定用于文档子树的文档顺序遍历的单个NodeIterator
实现。 这些NodeIterators
实例是通过致电DocumentTraversal
.createNodeIterator()
创建的。另见Document Object Model (DOM) Level 2 Traversal and Range Specification 。
- 从以下版本开始:
- 9,DOM Level 2
-
-
方法摘要
所有方法 实例方法 抽象方法 变量和类型 方法 描述 void
detach()
将NodeIterator
与其迭代的集合分离,释放任何计算资源并将NodeIterator
置于INVALID状态。boolean
getExpandEntityReferences()
此标志的值确定实体引用节点的子节点是否对NodeIterator
可见。NodeFilter
getFilter()
NodeFilter
用于屏幕节点。Node
getRoot()
NodeIterator
,在创建时指定。int
getWhatToShow()
此属性确定通过NodeIterator
呈现的节点类型。Node
nextNode()
返回集合中的下一个节点,并提升集合中NodeIterator
的位置。Node
previousNode()
返回集合中的上一个节点,并在NodeIterator
向后移动NodeIterator
的位置。
-
-
-
方法详细信息
-
getRoot
Node getRoot()
NodeIterator
,在创建时指定。
-
getWhatToShow
int getWhatToShow()
此属性确定通过NodeIterator
呈现的节点类型。 可用的常量集在NodeFilter
接口中定义。whatToShow
不接受的whatToShow
将被跳过,但仍可考虑他们的孩子。 请注意,此跳过优先于过滤器(如果有)。
-
getFilter
NodeFilter getFilter()
NodeFilter
用于屏幕节点。
-
getExpandEntityReferences
boolean getExpandEntityReferences()
此标志的值确定实体引用节点的子节点是否对NodeIterator
可见。 如果不对,这些孩子及其后代将被拒绝。 请注意,此拒绝优先于whatToShow
和过滤器。 另请注意,这是目前唯一的情况,即NodeIterators
可能会拒绝完整的子树而不是跳过单个节点。
为了产生具有扩展实体引用,并没有露出实体引用节点自身的文档视图,使用whatToShow
标志隐藏实体引用节点并设置expandEntityReferences
创建时为trueNodeIterator
。 要生成具有实体引用节点但没有实体扩展的文档视图,请使用whatToShow
标志显示实体引用节点并将expandEntityReferences
设置为false。
-
nextNode
Node nextNode() throws DOMException
返回集合中的下一个节点,并使集合中的NodeIterator
的位置前进。 创建NodeIterator
后,第一次调用nextNode()
将返回集合中的第一个节点。- 结果
- 正在迭代的集合中的下一个
Node
,或者如果该集合中没有更多成员,null
。 - 异常
-
DOMException
- INVALID_STATE_ERR:如果在调用detach
方法后调用此方法,则detach
此detach
。
-
previousNode
Node previousNode() throws DOMException
返回集合中的上一个节点,并在NodeIterator
向后移动NodeIterator
的位置。- 结果
- 正在迭代的集合中的先前
Node
,或者如果该集合中没有更多成员,null
。 - 异常
-
DOMException
- INVALID_STATE_ERR:如果在调用detach
方法后调用此方法,则detach
此detach
。
-
detach
void detach()
将NodeIterator
与其迭代的集合分离,释放任何计算资源并将NodeIterator
置于INVALID状态。 调用detach
后,调用nextNode
或previousNode
将引发异常INVALID_STATE_ERR。
-
-