INodeIterator

INodeIterator interface

迭代器用于逐步遍历一组节点,例如,NodeList 中的 组节点、由 个特定节点管理的文档子树、查询结果或任何其他 组节点。要迭代的节点集由 NodeIterator 的 实现确定。 DOM Level 2 为文档子树的文档顺序 遍历指定了 单个 NodeIterator 实现。通过调用 DocumentTraversal .createNodeIterator(). 创建这些迭代器的实例

另见文档对象模型 (DOM) 级别 2 遍历和范围规范. @since DOM Level 2

public interface INodeIterator : ITraversal

特性

姓名描述
PointerBeforeReferenceNode { get; }这个标志的值决定了 entity 引用节点的子节点是否对迭代器可见。如果为假,他们和 他们的后代将被拒绝。请注意,此拒绝优先于 whatToShow 和过滤器。另请注意 这是目前唯一的情况 NodeIterators可能拒绝完整的子树而不是 跳过单个节点。 要生成具有实体引用 展开并且不暴露实体引用节点本身的文档视图,请使用 whatToShow标志在创建 the 迭代器时隐藏实体引用 node 并将 expandEntityReferences 设置为 true。要生成具有实体 reference 节点但没有实体扩展的文档视图,请使用 whatToShow flags 显示实体引用节点并将 expandEntityReferences 设置为 false.
ReferenceNode { get; }当前参考节点。

方法

姓名描述
Detach()将 NodeIterator 从 iterated 的集合中分离出来,释放所有计算资源并将 iterator 置于 INVALID 状态。调用分离后, 调用 nextNode 或 previousNode 将 引发异常 INVALID_STATE_ERR.
NextNode()返回集合中的下一个节点,并将 迭代器在集合中的位置提前。创建 NodeIterator 后, 第一次调用 nextNode() 返回 集合中的第一个节点。
PreviousNode()返回集合中的前一个节点,并将 NodeIterator 在集合中的位置向后移动。

也可以看看