当您单击触发器时,下面的代码会将第二个 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”应该针对“七”。谢谢