0

我对 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根本不会被调用?

4

0 回答 0