У меня есть следующее:
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]);
};