关注我的代码:
<div id="test">
<div>
<div class="find_me"></div>
</div>
</div>
我不想使用querySelector或getElementsByClassName,如何为id'test'中的每个元素创建一个while循环,直到找到类为'find_me'的div?
答案 0 :(得分:1)
如果我理解正确
1)获取测试元素的子元素。 (此处变量为 child
)
var child = document.getElementById('test').children;
2)迭代它们中的每一个,因为它还需要再次迭代我正在迭代它的孩子。 (不确定为什么JS有这样的结构)(变量是 children
)
var children = child[i].children;
最终代码:
var child = document.getElementById('test').children;
for (var i = 0; i < child.length; i++) {
var children = child[i].children;
for (var i = 0; i < children.length; i++) {
if (children[i].className == "find_me") {
alert("Yup, here I am");
}
}
}
我包含jsfiddle,以便您可以在控制台查看ITERATIONS的原因。
希望你理解我的逻辑。
(我同意@MattBall)尝试 jQuery ,这里有干净的方法,比如.filter(), .find()
等等。一旦你弄清楚它就会爱上你。