我对 jquery 很陌生,目前正在阅读“学习 jQuery” 我有一个关于事件捕获和 event.target 的问题。
我有这样的html代码:
<div id="switcher" class="switcher">
<h3>Style Switcher</h3>
<button id="switcher-default">
Default
</button>
<button id="switcher-narrow">
Narrow Column
</button>
<button id="switcher-large">
Large Print
</button>
</div>
根据 jQuery 的事件捕获,jQuery 不支持事件捕获,只支持冒泡。这意味着,如果按钮和 div 元素都绑定到单击事件,并且当我单击按钮时,按钮的单击将首先调用,然后是 div,并且由于不支持事件捕获,这意味着如果我单击 div 区域, 按钮的点击函数不会被调用。
但是,如果我添加这样的内容:
$("#switcher").click(function(event) {
alert(event.target);
});
如果我点击按钮,事件目标将是按钮。如果选择器 $("#switcher") 只选择 div 元素,那么当我单击按钮时,它会提醒 event.target 怎么办?我想当我点击按钮时,上面的jQuery根本不会被调用?