NodeIterator: nextNode() 方法

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

NodeIterator.nextNode() 方法会返回由 NodeIterator 表示的节点集中的下一个节点,并使迭代器在节点集中前进。第一次调用 nextNode() 时会返回节点集中的第一个节点。

当节点集中没有剩余节点时,此方法返回 null

在旧版浏览器中,根据旧版规范的规定,如果在调用 NodeIterator.detach() 方法后调用此方法,可能会抛出 INVALID_STATE_ERR DOMException。较新版本的浏览器永远不会抛出此异常。

语法

js
nextNode()

参数

无。

返回值

一个 Node,表示此 NodeIterator 所表示节点集中当前节点之后的节点,如果当前节点是节点集中的最后一个节点,则返回 null

示例

js
const nodeIterator = document.createNodeIterator(
  document.body,
  NodeFilter.SHOW_ELEMENT,
  {
    acceptNode(node) {
      return NodeFilter.FILTER_ACCEPT;
    },
  },
);
currentNode = nodeIterator.nextNode(); // returns the next node

规范

规范
DOM
# dom-nodeiterator-nextnode

浏览器兼容性

另见