【发布时间】:2015-10-09 23:18:57
【问题描述】:
我有引导按钮组。此外,一个基于 jQuery 的事件处理程序(使用事件委托)根据点击事件在适当的 .btn 上设置/取消设置引导 .active 类。
当我的按钮中包含 html 元素时,就会出现问题。当您单击按钮的子元素时,.active 类将设置在 .btn 的子元素上。
我如何只接收我感兴趣的精确元素的事件?
http://jsfiddle.net/0nc3wjq4/ 要重现此问题,请单击按钮中的一个数字,然后单击不同按钮中的另一个数字。
<div class="btn-group btn-group-justified pipeline" role="group">
<a href="#" class="btn btn-default" role="button">
<h3 class="text-center">767</h3>
<p class="text-muted text-center">Stage1</p>
</a>
</div>
事件处理程序
$( ".btn-group" ).on( "click", ".btn", function( e ) {
$(this).siblings(".active").removeClass('active'); // previous
$(e.target).addClass('active'); // current
});
【问题讨论】:
标签: javascript jquery jquery-events event-delegation