下面是我的代码,它显示了一个非常简单的场景,其中包含多个触发器和目标。点击 div.trigger 1 会改变 div.target 1 的颜色,点击 div.trigger 2 会改变 div.target 2 的颜色。
我的实际 html 要复杂得多,所以我需要使用很多方法来遍历 DOM,而不是只使用一个 next()。在这种情况下,何时有其他解决问题的方法?
如果代码更健壮,这样如果触发器和目标元素的相对 html 结构发生变化,它仍然可以工作。例如,如果有类似 eq 函数使第一个 div.trigger 以第一个 div.target 为目标,而第二个 div.trigger 以第二个 div.target 为目标,而不管页面其余部分的 html。
<div class="trigger">trigger 1</div>
<div class="target">target 1</div>
<div class="trigger">trigger 2</div>
<div class="target">target 2</div>
$(document).ready(function(){
$('.trigger').click(function(){
$(this).next().css('background-color','red');
});
});
谢谢