994 B
994 B
Ответ: будет выведено 1
и 2
.
Первый обработчик сработает, так как он не убран вызовом removeEventListener
. Для удаления обработчика нужно передать в точности ту же функцию (ссылку на нее), что была назначена, а в коде передается такая же с виду функция, но, тем не менее, это другой объект.
Для того, чтобы удалить функцию-обработчик, нужно где-то сохранить ссылку на неё, например так:
function handler() {
alert("1");
}
button.addEventListener("click", handler, false);
button.removeEventListener("click", handler, false);
Обработчик button.onclick
сработает независимо и в дополнение к назначенному в addEventListener
.