给定一个类最接近(在树上)的最佳方法是什么,但它可以是父级的 sibling 。
我想获取以元素“.start”开头的“errors1”元素
<div>
...
<div class="errors">errors2</div>
<div>
.....
<div class="errors">errors1</div>
...
<div>...</div>
<div>
.....
<div class="start"></div>
</div>
</div>
</div>
制作了一个脚本,但它真的很糟糕,根本不起作用。
谢谢
编辑: 添加“...”以增强结构的动态性。重点是找到树上最接近的“.errors”。
最佳答案
很好的问题。下面的代码应该适合你。它循环遍历 .start
的每个父元素,直到找到带有 .errors
的元素。然后它会警告最接近 .start
的 .errors
元素的文本。
jQuery(function($){
var $start = $('.start'),
$parents = $start.parents();
$parents.each(function(){
var $this = $(this),
$thisErrors = $this.find('.errors'),
numErrors = $thisErrors.length;
if(numErrors){
alert($thisErrors.eq(numErrors-1).text());
return false;
}
});
});
关于Jquery第一次出现树遍历 parent / sibling ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4999739/