Метод removeEventListener()
Пример
Удалить событие "mousemove", которое было прикреплено с помощью метода addEventListener():
// Прикрепите обработчик событий к документу
document.addEventListener("mousemove", myFunction);
// Удалите обработчик событий из документа
document.removeEventListener("mousemove", myFunction);
Попробуйте сами »
Ещё примеры "Попробуйте сами" ниже.
Определение и использование
Метод document.removeEventListener() удаляет обработчик событий, который был прикреплен с помощью метода document.addEventListener().
Примечание: Для удаления обработчиков событий функция, указанная с помощью метода addEventListener(), должна быть внешней функцией с именем, как в примере выше (myFunction).
Анонимные функции, такие как "document.removeEventListener ("event", function(){ myScript });" не будут работать.
Совет: Используйте методы element.addEventListener() и элемент.removeEventListener() для добавления/удаления обработчиков событий в/из указанного элемента.
Поддержка браузера
Цифры в таблице указывают первую версию браузера, которая полностью поддерживает этот метод.
Метод | |||||
---|---|---|---|---|---|
removeEventListener() | 1.0 | 9.0 | 1.0 | 1.0 | 7.0 |
Синтаксис
document.removeEventListener(event, function, useCapture)
Значения параметров
Параметр | Описание |
---|---|
event | Требуется. Строка, указывающая имя события для удаления. Примечание:Не используйте префикс "on". Например, используйте "click" вместо "onclick". Совет: Список всех событий HTML DOM смотрите Справочник HTML DOM Объект событий. |
function | Требуемый. Указывает функцию для удаления. |
useCapture | Необязательный. Логическое значение, указывающее фазу события, из которой следует удалить обработчик событий. Возможные значения:
|
Технические детали
DOM Версия: | DOM События уровня 2 |
---|---|
Возвращаемое значение: | Не возвращает значение |
Changelog: | Параметр useCapture стал необязательным в Firefox 6 и Opera 12.0 (всегда был необязательным для Chrome, IE и Safari) |
Ещё примеры
Пример
Для браузеров, которые не поддерживают метод removeEventListener(), вы можете использовать метод detachEvent().
Этот пример демонстрирует кроссбраузерное решение:
if (document.removeEventListener) { // Для всех основных браузеров, кроме IE8 и более ранних версий
document.removeEventListener("mousemove", myFunction);
} else if (document.detachEvent) { // Для IE 8 и более ранних версий
document.detachEvent("onmousemove", myFunction);
}
Попробуйте сами »
Связанные страницы
JavaScript Учебник: HTML DOM EventListener
JavaScript Справочник: element.removeEventListener()