Подтвердить что ты не робот

Будет ли работать тот же addEventListener?

elemen.addEventListener('click',func,false);
elemen.addEventListener('click',func,false);

Будет ли вызов func дважды щелкнуть по elemen?

Если да... Есть ли решение для проверки, тот же самый прослушиватель событий существует на elemen?

4b9b3361

Ответ 1

func не будет вызываться дважды по клику, нет; но продолжайте читать для деталей и "получить".

Из addEventListener в спецификации:

Если несколько идентичных EventListeners зарегистрированы на одном EventTarget с теми же параметрами, дубликаты экземпляров отбрасываются. Они не вызывают EventListener дважды, и поскольку они отбрасываются, их не нужно удалять с removeEventListener метода removeEventListener.

(Мой акцент)

Вот пример:

var target = document.getElementById("target");

target.addEventListener("click", foo, false);
target.addEventListener("click", foo, false);

function foo() {
  var p = document.createElement("p");
  p.innerHTML = "This only appears once per click, but we registered the handler twice.";
  document.body.appendChild(p);
}
<input type="button" id="target" value="Click Me">