Потъване в събитията в JavaScript
Освен издигане на събития има и потъване. Всъщност събитието първо върви отгоре надолу (етап на прихващане), достига до нашия елемент (етап на целта) и едва тогава започва да се издига (етап на издигане).
За да закачим манипулатор на събитие
с оглед етапа на прихващане в addEventListener
има трети незадължителен параметър. Ако
той е равен на true - събитието ще се задейства
на етапа на прихващане, а ако е false
- на етапа на издигане (това е по подразбиране).
Нека разгледаме с пример:
elem1.addEventListener('click', function() {
console.log('зелен - потъване');
}, true);
elem1.addEventListener('click', function() {
console.log('зелен - издигане');
}, false);
elem2.addEventListener('click', function() {
console.log('син - потъване');
}, true);
elem2.addEventListener('click', function() {
console.log('син - издигане');
}, false);
elem3.addEventListener('click', function() {
console.log('червен - потъване');
}, true);
elem3.addEventListener('click', function() {
console.log('червен - издигане');
}, false);
Можете да проверите: