当您点击触发器时,下面的代码将变为第二个div.four红色而不是第一个。
我理解为什么会发生这种情况,但我可以在没有像.nextAll('。parent')这样的东西的情况下解决它.child()?我的html可能会改变,例如第一个div.four可能最终会出现在2个div.parents中,所以id就像一个仍然有效的解决方案。
是否有一种更健壮的方式来遍历dom,例如找到具有某个类的下一个div,而不管它有多少级别?
$(document).ready(function(){
$('.trigger').click(function(){
$(this).nextAll('.four').css('background-color','red');
});
});
<div class="trigger">trigger</div>
<div class="one">one</div>
<div class="two">two</div>
<div class="three">three</div>
<div class="parent">
<div class="four">four</div>
</div>
<div class="four">four</div>
更新
我应该指定但我需要在同一页面中有多个触发器和目标。所以对于这个小提琴,'触发器1'应该以'四'为目标,而'触发器2'应该以'七'为目标。谢谢