这应该是一个很好的小谜题,希望可以通过jQuery解决。这是一个self explanatory jsFiddle。请注意,我正在寻找一种通用解决方案,根据它们在dom树中的位置遍历dom中感兴趣的元素。我提供这个简化案例作为例子,所以你可以测试你的解决方案,它也更容易理解。jorder选择的嵌套dom元素的后序遍历
的DOM:
<div class="element" value="Hi5!">
<div class="element" value="Zero"></div>
<div class="junk" value="no no!"></div>
<div class="element" value="Four">
<div class="element" value="One"></div>
<div class="element" value="Three">
<div class="element" value="Two"></div>
</div>
</div>
<div class="element" value="Five"></div>
</div>
心中已经得到的代码,其打印在不希望的顺序元素:
$(document).ready(function(){
console.log("ready");
$(".element").each(function(index, item){
console.log(index + " | ", item.getAttribute('value'));
});
});
电流输出:
ready
0 | Hi5!
1 | Zero
2 | Two
3 | One
4 | Four
5 | Three
6 | Five
如何可以遍历并以postorder的方式打印上面的嵌套div元素的值?
编辑:感谢@zshooter提供的解决方案,并指出我的问题中的错误。这里是我的updated jsFiddle ordered properly in postorder.
因此,要清楚,你想要的输出是...? – nnnnnn
好吧,可以说如果你解决它,它看起来很自然;) – Aras
指标很重要或可以被丢弃? – zbrunson