怎样遍历当前节点的所有后代节点
Posted aisowe
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样遍历当前节点的所有后代节点相关的知识,希望对你有一定的参考价值。
1. Node.prototype.hasChildNodes();
2. Node.prototype.firstChilds();
3. Node.prototype.nextSibling();
function DOMComb(parent, callback) if (parent.hasChildNodes()) for (var node = parent.firstChild; node; node = node.nextSibling) DOMComb(node, callback); callback(parent); // 用法 DOMComb(document.body, console.log)
这里需要注意for循环的写法, 它的作用是循环所有子节点, 对每个字节点都使用DOMComb()函数. 第一个参数表示从第一个子节点开始遍历, 第二个参数表示这个节点不能为空(null / undefined等) , 第三个参数表示将下一个子节点赋值个node. 这种写法不常见, 但挺巧妙的.
以上是关于怎样遍历当前节点的所有后代节点的主要内容,如果未能解决你的问题,请参考以下文章