Javascript 如何循环嵌套的子结构?
当我们不知道括号的深度时,我在寻找一般的解决方案。然而,例如:Javascript 如何循环嵌套的子结构?,javascript,loops,Javascript,Loops,当我们不知道括号的深度时,我在寻找一般的解决方案。然而,例如: <div id="parent"> <div id="parent_child"> <div id="parent_child_child"> <div id="parent_child_child_child"> </div> </div> </div> </div> 如何在vanilla JavaScri
<div id="parent">
<div id="parent_child">
<div id="parent_child_child">
<div id="parent_child_child_child">
</div>
</div>
</div>
</div>
如何在vanilla JavaScript中循环这种结构?如果
jQuery
是一个选项,那么您可以使用后代选择器来查找所有子节点(在任何深度),然后使用。每个对它们进行迭代
$("#parent div").each(function(){
//your code goes here
});
一个纯JavaScript解决方案是
Array.from(document.querySelectorAll("#parent div")).forEach(function(itm){
console.log(itm); //itm represents the individual element.
});
- 将基于
提供的选择器
- 将节点列表转换为本机数组
- 可以方便地迭代数组
如果jQuery
是一个选项,您可以使用后代选择器
查找所有子节点(在任何深度),然后使用。每个对其进行迭代
$("#parent div").each(function(){
//your code goes here
});
一个纯JavaScript解决方案是
Array.from(document.querySelectorAll("#parent div")).forEach(function(itm){
console.log(itm); //itm represents the individual element.
});
- 将根据
提供的选择器
- 将节点列表转换为本机数组
- 可以方便地迭代数组
您应该在问题中添加您尝试过的代码。不要依赖SO作为你的个人编码服务。我甚至不知道如何开始。很抱歉,我对编程还很陌生。首先,请查找关于基本JS循环和DOM节点遍历的教程。我假设您不能依赖于确切的DOM结构。如果不需要,则搜索“遍历DOM”以找到遍历所有节点的通用解决方案,或者如果您只需要元素,则从根元素开始执行。getElementsByTagName(“*”)
您应该将尝试过的代码添加到问题中。不要依赖SO作为你的个人编码服务。我甚至不知道如何开始。很抱歉,我对编程还很陌生。首先,请查找关于基本JS循环和DOM节点遍历的教程。我假设您不能依赖于确切的DOM结构。如果不需要,则搜索“遍历DOM”以找到遍历所有节点的非常通用的解决方案,或者如果您只需要元素,则从根元素开始执行。getElementsByTagName(“*”)
有趣的:对于好奇的人,数组。来自文档:这正是我想要的。谢谢!:)我不是反对者,但提到了Array.from
对于该语言来说是非常新的,除了最新的浏览器之外,它在任何方面的支持都是有限的或没有的。这个问题说明他正在寻找一个通用的解决方案,并且给出的标记只是一个例子。您的解决方案只适用于问题中给出的DOM,因此在其他情况下没有用处。@Skint我教他如何迭代元素集合,以及如何选择元素(querySelectorAll)。从这一点上,他可以进一步学习。他还可以传递任何他想要的选择器,并根据自己的情况调整此代码。有趣的是:对于那些好奇的人,Array。从
文档中可以看出:这正是我想要的。谢谢!:)我不是反对者,但提到了Array.from
对于该语言来说是非常新的,除了最新的浏览器之外,它在任何方面的支持都是有限的或没有的。这个问题说明他正在寻找一个通用的解决方案,并且给出的标记只是一个例子。您的解决方案只适用于问题中给出的DOM,因此在其他情况下没有用处。@Skint我教他如何迭代元素集合,以及如何选择元素(querySelectorAll)。从这一点上,他可以进一步学习。他还可以传递任何他想要的选择器,并根据自己的情况调整此代码。