Метод addEventListener() DOM HTML
- Предыдущая страница accessKey
- Следующая страница appendChild()
- Вернуться на один уровень выше Объект Elements DOM HTML
Определение и использование
addEventListener()
Метод добавления обработчика событий к элементу.
Пример
Пример 1
Добавление click события к элементу <button>:
element.addEventListener("click", myFunction); function myFunction() { document.getElementById("demo").innerHTML = "Hello World"; }
Пример 2
Более компактный код:
element.addEventListener("click", function() { document.getElementById("demo").innerHTML = "Hello World"; });
Более примеров можно найти в нижней части страницы.
Грамматика
element.addEventListener(type, function, useCapture)
Параметры
Параметры | Описание |
---|---|
type |
Обязателен. Название события. Не используйте префикс "on". Используйте "click", а не "onclick". |
function | Обязателен. Функция, выполняемая при наступлении события. |
useCapture |
Опционально (по умолчанию = false).
|
Возвратное значение
Нет.
Технические детали
Этот метод добавляет указанную функцию слушателя событий в набор слушателей событий текущего узла для обработки указанного типа type события. useCapture Установлено в true, то слушатель событий зарегистрирован как слушатель событий capture. Если useCapture Установлено в false, он зарегистрирован как обычный слушатель событий.
addEventListener() может быть вызван несколько раз, регистрируя несколько обработчиков событий одного типа на одном узле. Но要注意, что DOM не может определить порядок вызова нескольких обработчиков событий.
Если слушатель событий функции на одном и том же узле с type и useCapture Если параметр зарегистрирован дважды, то вторая регистрация будет проигнорирована. Если при обработке события на узле регистрируется новый слушатель событий, то новый слушатель событий не будет вызван для этого события.
Когда с Node.cloneNode() Метод или Document.importNode() Метод копирует узел Document, но не копирует зарегистрированные на исходном узле слушатели событий.
Этот метод также доступен Document и Window Объект определен и работает аналогичным образом.
Более примеров
Пример 3
Вы можете добавить множество событий к одному элементу:
element.addEventListener("click", myFunction1); element.addEventListener("click", myFunction2);
Пример 4
Вы можете добавить различные события к одному элементу:
element.addEventListener("mouseover", myFunction); element.addEventListener("click", someOtherFunction); element.addEventListener("mouseout", someOtherFunction);
Пример 5
Чтобы передать значения параметров, используйте "анонимную функцию":
element.addEventListener("click", function() { myFunction(p1, p2); });
Пример 6
Изменить цвет фона элемента <button>:
element.addEventListener("click", function() { this.style.backgroundColor = "red"; });
Пример 7
Разница между бубblemaking и capture:
element1.addEventListener("click", myFunction, false); element2.addEventListener("click", myFunction, true);
Пример 8
Удаление обработчика событий:
element.addEventListener("mousemove", myFunction); element.removeEventListener("mousemove", myFunction);
Поддержка браузеров
element.addEventListener()
Это функция DOM Level 2 (2001).
Все браузеры полностью поддерживают его:
Chrome | IE | Edge | Firefox | Safari | Opera |
---|---|---|---|---|---|
Chrome | IE | Edge | Firefox | Safari | Opera |
Поддержка | 9-11 | Поддержка | Поддержка | Поддержка | Поддержка |
Связанные страницы
Методы элемента:
Методы документа:
Урок:
- Предыдущая страница accessKey
- Следующая страница appendChild()
- Вернуться на один уровень выше Объект Elements DOM HTML