Используя прослушиватель событий, мы должны использовать useCapture как false для поддержки старого браузера или он будет использоваться по умолчанию для каждого браузера - PullRequest
2 голосов
/ 05 апреля 2020

Я делаю веб-сайт для организации, которая имеет разных клиентов в разных странах. Как использовать прослушиватель событий

document.addEventListener('click', this.handleClickOutsideOption)

или

document.addEventListener('click', this.handleClickOutsideOption, false)

для поддержки широкого спектра клиентов

1 Ответ

2 голосов
/ 05 апреля 2020

Как указано в документах :

Примечание: useCapture не всегда является необязательным. В идеале вы должны включить его для максимально широкой совместимости с браузерами.

Так что да, вы должны установить его на false для поддержки широкого спектра клиентов.

Кроме того, вы необходимо знать, когда вы можете установить его на true. Допустим, вы прослушиваете событие blur в одном текстовом поле ввода, затем вы можете сохранить его как false, например:

const blog = document.querySelector('#blog');
blog.addEventListener('blur', function (event) {
    // Your logic here...
}, false);

Но, если вы хотите прослушать все события blur в document, тогда вы должны установить его на true, например:

document.addEventListener('blur', function (event) {
    // Your logic here...
}, true);

As, установив его на true, чтобы помочь нам воспользоваться преимуществами всплывающих событий для событий, которые в противном случае не поддерживают его как focus, blur, et c. В основном это false для наиболее часто используемых событий, поэтому этот параметр равен optional в современных браузерах и по умолчанию равен false.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...