私は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がまったく呼び出されないのではないかと思いましたか?