StopPropagation не останавливает распространение события - PullRequest
0 голосов
/ 10 ноября 2018

Я прочитал о захвате событий и пересылке событий и узнал, что браузеры поддерживают оба. Давайте предположим, что после отрисовки страницы, например * 1001 stackoverflow.com *

Я прикрепляю слушатель события щелчка к телу.

    var el = document.getElementsByTagName('body')[0];
    el.addEventListener('click', function(e) {
          alert('Heyyyyy');
          e.stopPropagation()
        }, true);

Обратите внимание, что я предоставил значение true, чтобы принудительно захватывать, а не всплывать. Почему, несмотря на то, что звонки прекращаются, я могу перемещаться по таким ссылкам, как теги, пользователи, вакансии и т. Д.

Однако, если я изменю его на:

var el = document.getElementsByTagName('body')[0];
el.addEventListener('click', function(e) {
  alert('Heyyyyy');
  e.stopPropagation();
  e.preventDefault();
}, true);

Код работает нормально.

...