现在我有一堆触发器和目标。当你点击一个span
时,下一个div
应该有一个类切换它。 独特的情况下这里是触发三实际上应该针对div
外的ul
点击元素遍历容器
<ul>
<li>
<span class="trigger">Trigger 1</span>
<div class="target">Target to reveal when I press Trigger 1</div>
</li>
<li>
<span class="trigger">Trigger 2</span>
<div class="target">Target to reveal when I press Trigger 2</div>
</li>
<li>
<span class="trigger">Trigger 3</span>
</li>
</ul>
<div class="target">Target to reveal when I press Trigger 3</div>
现在,我的jQuery看起来是这样的。
var trigger = ".trigger";
var recipient = ".target";
$(trigger).click(function(e) {
e.stopPropagation();
if ($(recipient).hasClass("open")){
$(trigger).not(this).next(recipient).removeClass("open");
}
if($(trigger).hasClass("active")){
$(trigger).not(this).removeClass("active");
}
$(this).next(recipient).toggleClass("open");
$(this).toggleClass("active");
});
我的问题是双重的位置:
一)我怎样才能获得的点击事件触发3到含ul
外遍历和到下一个div
b )有没有办法更智能地绑定目标和触发器使用id
什么的?我知道,对于label
,您可以使用for
来定位input
ID。在jQuery中是否存在等价物?
This works。谢谢一堆! – Modermo