Https://developer.mozilla.org/en/DOM/element.addEventListener adresindeki makaleyi okudum, ancak useCapture
özelliği anlayamıyorum . Tanım var:
True olursa, useCapture, kullanıcının yakalamayı başlatmak istediğini belirtir. Yakalamayı başlattıktan sonra, belirtilen türde tüm olaylar DOM ağacının altındaki herhangi bir EventTarget'a gönderilmeden önce kayıtlı dinleyiciye gönderilir. Ağaçta yukarı doğru hareket eden olaylar, yakalamayı kullanmak için belirlenmiş bir dinleyiciyi tetiklemez.
Bu kod üst olayı çocuk önce tetikler, bu yüzden onun davranışını anlayamıyorum.Document nesnesi usecapture true ve child div usecapture yanlış ayarlanmış ve belge usecapture izlenir.Bu yüzden neden belge özelliği alt öğe tercih edilir.
function load() {
document.addEventListener("click", function() {
alert("parent event");
}, true);
document.getElementById("div1").addEventListener("click", function() {
alert("child event");
}, false);
}
<body onload="load()">
<div id="div1">click me</div>
</body>
no specification is made as to the order in which they will receive the event with regards to the other EventListeners on the EventTarget
. Tüm tarayıcıları test etmedim, bu yüzden hepsini aynı şekilde uygulayabilirler. Ancak yakalama olayları, yakalamayan olaylardan önce yapılacaktır.