Πολλαπλοί χειριστές σε ένα στοιχείο στο JavaScript
Εάν ένα στοιχείο έχει πολλούς χειριστές
για ένα γεγονός, τότε ακόμη και με τη διακοπή
της αναδίπλωσης όλοι τους θα εκτελεστούν. Δηλαδή,
stopPropagation εμποδίζει την προώθηση
του γεγονότος παραπέρα, αλλά στο τρέχον στοιχείο όλοι
οι χειριστές θα εκτελεστούν. Δείτε το παράδειγμα:
elem1.addEventListener('click', function() {
console.log('πράσινο');
});
elem2.addEventListener('click', function(event) {
console.log('γαλάζιο - πρώτος χειριστής');
event.stopPropagation(); // σταματάμε την αναδίπλωση
});
elem2.addEventListener('click', function() {
console.log('γαλάζιο - δεύτερος χειριστής'); // θα εκτελεστεί οπωσδήποτε
});
elem3.addEventListener('click', function() {
console.log('κόκκινο');
});
Μπορείτε να το δοκιμάσετε: