Middle
Ar galima sustabdyti įvykių plitimą? Kaip? Kuo skiriasi stopPropagation ir stopImmediatePropagation?
sobes.tech AI
Atsakymas iš AI
Taip, įvykių plitimą galima sustabdyti naudojant stopPropagation() ir stopImmediatePropagation() metodus įvykio objekte.
event.stopPropagation()neleidžia įvykiui toliau plisti aukštyn DOM medyje, tačiau kiti tvarkytojai tame pačiame elemente vis dar bus iškviesti.event.stopImmediatePropagation()ne tik sustabdo plitimą, bet ir neleidžia iškviesti kitų to paties įvykio tvarkytojų tame pačiame elemente.
Pavyzdys:
element.addEventListener('click', (event) => {
event.stopPropagation(); // arba event.stopImmediatePropagation();
console.log('Elemento tvarkytojas');
});