我正在渲染一个非常复杂的元素树,有很多级别,我需要深入挖掘最后一个子元素以开始从下到上删除,并且我需要动态地执行此操作。
我的意思是:
我想从“div”元素开始并循环所有子元素。当我找到“div”的第一个 child 时,我想去找到那个 child 的 child 。
我希望它很清楚,但这里有一个更直观的表示来帮助您理解:
<div> 1
<a>1(a)</a>
<div>1(b)
<div>1(b)(1)
<div>1(b)(1)(1)
<a>1(b)(1)(1)(1)</a>
</div>
</div>
<span>1(b)(2)</span>
</div>
<div>1(c)</div>
</div>
考虑到上述结构,我想要:从点 1 开始动态地挖掘点 1(b)(1)(1)(1) (不知道 ids 、类或类型)并销毁最后一个子级(1(b)(1)(1)(1)),然后是其父级,依此类推。
我该怎么做?
最佳答案
DFS = 深度优先搜索。 这是一个简单的 DFS,它可以满足您的要求(如果我满足您的要求): http://jsfiddle.net/umkZ2/
每个警报都会为最深的节点着色。您可以用延迟或其他方式替换它。
关于javascript - jQuery 循环遍历整个元素树以消除内存泄漏和孤立元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12746546/