我有以下内容:
for (var i = 0; i < children.length; i++){
if(hasClass(children[i], "lbExclude")){
children[i].parentNode.removeChild(children[i]);
}
};
我希望它遍历所有孩子的孩子等(不仅仅是顶层)。我找到了这条线,这似乎是这样做的:
for(var m = n.firstChild; m != null; m = m.nextSibling) {
但我不清楚如果我做出那个转换,我如何指代当前的孩子?我将不再让我澄清孩子的索引位置。有什么建议么?
谢谢!
更新:
根据答案建议,我现在正在使用以下内容。这是正确/最有效的方法吗?
function removeTest(child) {
if (hasClass(child, "lbExclude")) {
child.parentNode.removeChild(child);
}
}
function allDescendants(node) {
for (var i = 0; i < node.childNodes.length; i++) {
var child = node.childNodes[i];
allDescendants(child);
removeTest(child);
}
}
var children = temp.childNodes;
for (var i = 0; i < children.length; i++) {
allDescendants(children[i]);
};