Как проверить, есть ли у кнопки прослушиватель при нажатии - PullRequest
1 голос
/ 29 октября 2019

Мне интересно, как я могу проверить, есть ли у кнопки прослушиватель при нажатии. На моей веб-странице есть кнопка, но иногда нажатие кнопки не дает никакого эффекта. Мне интересно, могу ли я проверить, подключен ли обработчик щелчков.

Я пробовал это, но это не работает ..

$('#changeStatus').onClick()

Ответы [ 2 ]

2 голосов
/ 29 октября 2019

Это зависит от того, как был применен слушатель ....

Если слушатель был настроен для свойства события, вы можете проверить свойство:

let input = document.querySelector("input");
input.onclick = function(){ console.log("I was clicked"); }

if(input.onclick){
  console.log("There is a click event listener.");
} else {
  console.log("There is NO click event listener.");
}
<input>

Но, если слушатель зарегистрирован с использованием современного DOM API .addEventListener(), то нет, узнать это невозможно.

0 голосов
/ 29 октября 2019

А как насчет этого?

var hasOnClick = ($('#changeStatus').attr('onClick') !== undefined)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...