-
public interface NodeIteratorNodeIterators用于步骤通过一组节点,例如,在该组节点NodeList,文档子树由一个特定的管辖Node,一个查询的结果,或者任何其它组节点。 要迭代的节点集由NodeIterator的实现NodeIterator。 DOM Level 2指定文档顺序遍历文档子树的单个NodeIterator实现。 这些NodeIterators实例是通过调用DocumentTraversal.createNodeIterator()创建的。另见Document Object Model (DOM) Level 2 Traversal and Range Specification 。
- 从以下版本开始:
- 9,DOM Level 2
-
-
方法摘要
所有方法 接口方法 抽象方法 Modifier and Type 方法 描述 voiddetach()从它迭代的集合中分离出NodeIterator,释放任何计算资源,并将NodeIterator置于INVALID状态。booleangetExpandEntityReferences()该标志的值确定实体引用节点的子节点是否可见NodeIterator。NodeFiltergetFilter()NodeFilter用于屏幕节点。NodegetRoot()NodeIterator,在创建时指定。intgetWhatToShow()此属性确定通过NodeIterator呈现哪些节点类型。NodenextNode()返回集合中的下一个节点,并将集合中的NodeIterator的位置NodeIterator。NodepreviousNode()返回集合中的上一个节点,并将集合中的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。 创建NodeIterator之后,首次调用nextNode()返回集合中的第一个节点。- 结果
-
下一个
Node在集合中迭代,或null如果没有更多的成员在该集合。 - 异常
-
DOMException- INVALID_STATE_ERR:在调用detach方法后调用detach方法时引发。
-
previousNode
Node previousNode() throws DOMException
返回集合中的上一个节点,并将NodeIterator的位置向后移动。- 结果
-
以前的
Node在集合中被迭代,或null如果没有更多的成员在该集合。 - 异常
-
DOMException- INVALID_STATE_ERR:在调用detach方法后调用detach方法时引发。
-
detach
void detach()
从它迭代的集合中分离出NodeIterator,释放任何计算资源,并将NodeIterator置于INVALID状态。detach被调用后,调用nextNode或previousNode将引发异常INVALID_STATE_ERR。
-
-