Įvykių sklidimo etapai JavaScript
Be įvykių sklidimo yra ir įvykių perėmimas. Tiesą sakant, įvykis pirmiausia eina iš viršaus žemyn (perėmimo stadija), pasiekia mūsų elementą (tikslo stadija) ir tik tada pradeda sklisti (sklidimo stadija).
Norint priskirti įvykio apdorotoją
atsižvelgiant į perėmimo stadiją, addEventListener
turi trečią neprivalomą parametrą. Jei
jis lygus true - įvykis suveiks
perėmimo stadijoje, o jei false
- sklidimo stadijoje (tai yra numatytasis nustatymas).
Pažiūrėkime pavyzdį:
elem1.addEventListener('click', function() {
console.log('žalias - perėmimas');
}, true);
elem1.addEventListener('click', function() {
console.log('žalias - sklidimas');
}, false);
elem2.addEventListener('click', function() {
console.log('mėlynas - perėmimas');
}, true);
elem2.addEventListener('click', function() {
console.log('mėlynas - sklidimas');
}, false);
elem3.addEventListener('click', function() {
console.log('raudonas - perėmimas');
}, true);
elem3.addEventListener('click', function() {
console.log('raudonas - sklidimas');
}, false);
Galite patikrinti: