为什么TreeWalker currentNode默认为根节点
Why does TreeWalker currentNode default to root node?
在构造TreeWalker时,为什么currentNode指向根,即使它可能不通过筛选条件?
我本来希望它为null,直到我调用nextNode,这样我就可以看到根是否正在传递传递给它的筛选条件
我想这是它的设计方式,我只是不太明白原因。它不适合我查找具有特定属性集的所有元素(包括根)的用例。如果我转到根的父级,我就包括了我不想要的兄弟姐妹。
当前节点不表示上一次方法调用的结果,但它表示walk的当前状态,即执行下一步的节点。它决不能为null,实际上可能是一个不会通过过滤器的节点——它可以任意设置(手动设置,而不仅仅是通过step方法)。
只有所有方法调用的返回值才会被过滤节点,并且这些返回值可以是null
。
它不适合我查找具有特定属性集的所有元素(包括根)的用例。
如果parentNode
方法与筛选器匹配,那么它最终应该会将您带到根节点,否则使用null
方法。
currentNode
指向根,因为这样它就可以递归遍历文档子树,将每个childNode
调用为自己树的根。它不一定指向文档的根,只指向创建树时使用的root
节点。参见tree traversal
相关文章:
- javascript中的根节点是什么
- JsTree如何创建根节点
- 为什么TreeWalker currentNode默认为根节点
- 信息可视化不迭代根节点
- 删除 JSON 中具有多个值的根节点
- 如何在 d3.layout.pack 图形中居中根节点圆圈
- 将根节点传递给 d3 树状图布局时,是否会缓存该布局
- jsTree :如何在 jsTree 中获取所选节点的 ID 到根节点
- 如何将节点标识为根节点
- 在d3js树布局中将类添加到根节点
- 使用jquery查找xml中的根节点标记
- 当选择更改时,ASPxTreeList展开/折叠根节点
- 如何在extjs4mvc中将根节点添加到树面板中
- CKEditor强制根节点
- 从根节点ng-if访问AngularJs控制器属性
- Js动态树插件
- 结构-禁用单选按钮选择,如果它的根节点
- 获取从当前节点开始并以根节点结束的节点列表
- jtree:如何将ajax加载的根节点的状态设置为待定状态
- 在JSON中向根节点及其所有子节点附加键值
- 找到元素DOM的根节点(阴影或光)的最佳方法是什么?