Выразительный JavaScript (Хавербеке) - страница 152

, показывая текущие координаты мыши, но только каждые 250 миллисекунд.

>

Итог

Обработчики событий позволяют обнаруживать и реагировать на события, над которыми мы не властны. Для их регистрации используется метод >addEventListener.

У событий есть определяющий их тип (>"keydown", >"focus", и так далее). Большинство событий вызываются конкретными узлами DOM, и затем распространяются на их предков, позволяя связанными с ними обработчикам обрабатывать их.

При вызове обработчика ему передаётся объект события с дополнительной информацией о событии. У объекта также есть методы, позволяющие остановить дальнейшее распространение (>stopPropagation) и предотвратить обработку события браузером по умолчанию (>preventDefault).

Нажатия на клавиши запускают события >"keydown", >"keypress" и >"keyup". Нажатия на кнопки мыши запускают события >"mousedown", >"mouseup" и >"click". Движения мыши запускают события >"mousemove" и, возможно, >"mouseenter" или >"mouseout".

Прокрутку можно обнаружить через событие >"scroll", а изменения фокуса через события >"focus" и >"blur". Когда заканчивается загрузка документа, у объекта >window запускается событие >"load".

В одно и то же время может работать один участок программы. Поэтому обработчики событий и другие запланированные скрипты будут ждать окончания работы текущих.

Упражнения

Цензура клавиатуры

В промежутке с 1928 по 2013 год турецкие законы запрещали использование букв Q, W и X в официальных документах. Это являлось частью общей инициативы подавления курдской культуры – эти буквы используются в языке курдов, но не у турков.

В качестве упражнения на тему странного использования технологий, я прошу вас запрограммировать поле для ввода текста (тег >) так, чтобы эти буквы нельзя было туда вписать. Насчет копирования и вставки и других подобных возможных обходов правила не беспокойтесь.

>

>

След мыши

В ранние дни JavaScript, когда было время кричащих домашних страниц с обилием анимированных картинок, люди использовали язык очень вдохновляющими способами. Одним из них был «след мыши» — серия картинок, которые следовали за курсором при его движении по странице.