INodeFilter

INodeFilter interface

过滤器是知道如何“过滤掉”节点的对象。如果 NodeIterator 或 TreeWalker 被赋予 NodeFilter,它会在返回下一个 节点之前应用过滤器。如果过滤器说接受该节点,则遍历逻辑返回 it;否则,遍历查找下一个节点并假装被拒绝的 节点不存在。

DOM 不提供任何过滤器。 NodeFilter 只是一个 接口,用户可以实现它来提供自己的过滤器。

NodeFilters不需要知道如何从node 遍历到node,也不需要知道关于 正在遍历的数据结构的任何信息。这使得编写过滤器变得非常容易,因为 他们唯一需要知道的就是评估单个节点。一个 过滤器可以与多种不同类型的遍历一起使用, 鼓励代码重用。

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

public interface INodeFilter

方法

姓名 描述
AcceptNode(Node) 测试指定节点是否在 TreeWalker 或 NodeIterator 的逻辑视图中可见。这个函数 将被 TreeWalker 和 NodeIterator 的实现调用;它通常不直接从 用户代码中调用。 (尽管如果您想使用相同的 过滤器来指导您自己的应用程序逻辑,您可以这样做。)

也可以看看