我有以下标记:
<ul>
<li class="tgt"><img src="http://placehold.it/48x48" width="48px" height="48px"></li>
<li class="tgt"><img src="http://placehold.it/48x48" width="48px" height="48px"></li>
<li class="tgt"><img src="http://placehold.it/48x48" width="48px" height="48px"></li>
</ul>
来自代码编辑器的代码:
$('.tgt').on('click', function (e) {
if ($(e.target).hasClass('tgt')) {
$(e.target).addClass('active');
}
});
我使用jQuery的事件委托向所有.tgt元素附加了一个点击处理程序。出于某种原因,如果我单击图像,则事件不会冒泡到li。相反,事件目标被显示为图像。
这里是一个代码片段: http://jsfiddle.net/CgC4V/ 为什么事件没有冒泡到li.tgt?