Prekinitev širjenja dogodkov v JavaScript

Širjenje dogodka lahko ustavite na katerem koli elementu, skozi katerega se dogodek širi. Za to morate v klicu elementa poklicati metodo stopPropagation objekta Event.

V naslednjem primeru bo klik na rdeči blok sprožil dogodek najprej na njem samem, nato na modrem bloku in tam se konča - modri blok prepreči nadaljnje širjenje in zeleni blok se ne bo odzval:

javascriptelem1.addEventListener('click', function() {
  console.log('zelen');
});
elem2.addEventListener('click', function(event) {
  console.log(' moder');
  event.stopPropagation(); // ustavimo širjenje
});
elem3.addEventListener('click', function() {
  console.log('rdeč');
});

Lahko preizkusite: