логотип PurpleSchool
логотип PurpleSchool

Объект события Event в JavaScript

Автор

Дмитрий Нечаев

В JavaScript при возникновении события браузер создаёт объект события, который передаётся в функцию-обработчик. Этот объект содержит все подробности о событии, позволяя разработчикам более точно управлять реакцией на событие. В данной статье мы подробно рассмотрим объект события Event, его свойства и методы, а также научимся использовать его для получения информации о событии.

Основные свойства объекта Event

Объект Event имеет несколько стандартных свойств, которые предоставляют информацию о событии:

  • type: строка, указывающая тип события (например, click).
  • target: элемент, на котором произошло событие.
  • currentTarget: элемент, к которому был прикреплён обработчик события.
  • eventPhase: число, указывающее на текущую фазу прохождения события (1 - перехват, 2 - достигло целевого элемента, 3 - всплытие).
  • bubbles: булево значение, указывающее, может ли событие всплывать.
  • cancelable: булево значение, указывающее, можно ли отменить стандартное поведение события.
  • defaultPrevented: булево значение, которое становится истинным, если был вызван метод preventDefault().
  • timeStamp: время возникновения события в миллисекундах с начала загрузки страницы.

Пример использования свойств объекта события:

document.getElementById('myButton').addEventListener('click', function(event) {
    console.log('Тип события:', event.type);
    console.log('Целевой элемент:', event.target);
    console.log('Элемент, на котором висит обработчик:', event.currentTarget);
    console.log('Фаза события:', event.eventPhase);
});

Методы объекта Event

Объект Event предоставляет несколько методов для управления событием:

  • preventDefault(): отменяет стандартное действие, которое браузер обычно выполняет на это событие.
  • stopPropagation(): предотвращает дальнейшее распространение текущего события.
  • stopImmediatePropagation(): предотвращает дальнейшее распространение текущего события и останавливает выполнение остальных обработчиков событий на текущем элементе.

Пример использования методов:

document.getElementById('link').addEventListener('click', function(event) {
    event.preventDefault(); // Отменяет переход по ссылке
    event.stopPropagation(); // Останавливает всплытие события
    console.log('Клик по ссылке, но переход не произойдет');
});

Расширенные объекты событий

В зависимости от типа события, объект события может иметь дополнительные свойства. Например, объекты событий, связанные с мышью (MouseEvent), содержат информацию о позиции курсора (свойства clientX и clientY), а объекты событий клавиатуры (KeyboardEvent) — о нажатой клавише (свойство key).

Пример объекта события мыши:

document.addEventListener('mousemove', function(event) {
    console.log('Позиция курсора X:', event.clientX);
    console.log('Позиция курсора Y:', event.clientY);
});

Заключение

Объект события Event в JavaScript играет ключевую роль в обработке и управлении событиями в браузере. Понимание его свойств и методов позволяет разработчикам создавать более интерактивные и отзывчивые приложения, точно реагирующие на действия пользователей и условия окружающей среды.

Стрелочка влевоСобытийная модель Event в JavaScriptСобытие DOMContentLoaded в JavaScriptСтрелочка вправо

Все гайды по Javascript

Как работает метод trim() - JavaScriptКак работает метод toUpperCase() - JavaScriptКак работает метод toLowerCase() - JavaScriptКак работает метод substring() - JavaScriptКак работает метод startsWith() - JavaScriptКак работает метод split() - JavaScriptКак работает метод slice() - JavaScriptКак работает метод search() - JavaScriptКак работает метод replaceAll() - JavaScriptКак работает метод replace() - JavaScriptКак работает метод repeat() - JavaScriptКак работает метод padStart() - JavaScriptКак работает метод padEnd() - JavaScriptКак работает метод matchAll() - JavaScriptКак работает метод match() - JavaScriptКак работает метод localeCompare() - JavaScriptКак работает свойство length - JavaScriptКак работает метод lastIndexOf() - JavaScriptКак работает метод indexOf() - JavaScriptКак работает метод includes() - JavaScriptКак работает метод fromCodePoint() - JavaScriptКак работает метод fromCharCode() - JavaScriptКак работает метод endsWith() - JavaScriptКак работает метод concat() - JavaScriptКак работает метод codePointAt() - JavaScriptКак работает метод charCodeAt() - JavaScriptКак работает метод charAt() - JavaScript
Итератор в JavaScript
try...catch в JavaScriptError в JavaScript
Событие wheel в JavaScriptСобытие unload в JavaScriptСобытие touch в JavaScriptСобытие submit в JavaScriptСобытие scroll в JavaScriptСобытие reset в JavaScriptМетод .preventDefault() в JavaScriptСобытие mouseover в JavaScriptСобытие mouseout в JavaScriptСобытие load в JavaScriptСобытие keyup в JavaScriptСобытие keydown в JavaScriptСобытие invalid в JavaScriptСобытие input в JavaScriptСобытийная модель Event в JavaScriptОбъект события Event в JavaScriptСобытие DOMContentLoaded в JavaScriptСобытие dblclick в JavaScriptСобытие click в JavaScriptСобытие beforeunload в JavaScriptСобытие change в JavaScript
Как работает метод some() - JavaScriptКак работает метод reverse() - JavaScriptКак работает метод reduce() - JavaScriptКак работает метод map() - JavaScriptКак работает метод isArray() - JavaScriptКак работает метод indexOf() - JavaScriptКак работает метод includes() - JavaScriptКак работает метод from() - JavaScriptКак работает метод forEach() - JavaScriptКак работает метод flatMap() - JavaScriptКак работает метод flat() - JavaScriptКак работает метод findIndex() - JavaScriptКак работает метод find() - JavaScriptКак работает метод filter() - JavaScriptКак работает метод every() - JavaScriptМассивы в JavaScript
Открыть базу знаний