[JS30] -25) Event Capture, Bubbling, Propagation and Once
Bubbling
<div class="one">
<div class="two">
<div class="three">
</div>
</div>
</div>
親divにclickイベントを登録し、一番奥のオレンジ色をクリックします.
イベントはサブdivからBubblingされ、3、2、1の順に出力されます.
Capturing
divs.forEach(div => div.addEventListener('click', logText, {
once: true
}));
captureがtrueの場合、イベントキャプチャは親divから子divに伝播し、1、2、3の順序で出力されます.Once
divs.forEach(div => div.addEventListener('click', logText, {
capture: true,
once: true
}));
Onceがtrueに設定されている場合は、イベント呼び出しを一度取り出して無効にします.stopPropagation
function logText(e) {
e.stopPropagation();
}
divs.forEach(div => div.addEventListener('click', logText, {
capture: true,
once: true
}));
stopPropagationは委任活動を阻止する.Reference
Reference
この問題について([JS30] -25) Event Capture, Bubbling, Propagation and Once), 我々は、より多くの情報をここで見つけました https://velog.io/@gygy/JS30-25-Event-Capture-Bubbling-Propagation-and-Onceテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol