Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ASCII и latin.docx
Скачиваний:
3
Добавлен:
08.08.2019
Размер:
190.09 Кб
Скачать

17.1.1.1. Аппаратнозависимые и аппаратнонезависимые события

При внимательном изучении табл. 17.1 можно заметить, что все события делят

ся на две большие категории. Первая категория – это события ввода (raw events,

или input events). Эти события генерируются, когда пользователь перемещает

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

события просто описывают действия пользователя и не имеют другого смысла.

Вторая категория событий – это семантические события (semantic events). Это

высокоуровневые события, они имеют более сложный смысл и обычно происхо

дят только в определенном контексте: когда броузер завершает загрузку доку

мента или, например, когда должна выполниться передача данных формы. Се

мантическое событие часто происходит как побочный эффект низкоуровневого

события. Например, когда пользователь щелкает на кнопке Submit, вызываются

три обработчика событий ввода: onmousedown, onmouseup и onclick. И в результате

щелчка на кнопке мыши HTMLформа, содержащая кнопку Submit, генерирует

семантическое событие onsubmit.

Обработчик Условия вызова Поддержка

onerror Ошибка при загрузке изображения <img>

onfocus Элемент получил фокус ввода <button>, <input>, <label>,

<select>, <textarea>, <body>

onkeydown Клавиша нажата. Для отмены возвращает

false

Элементы формы и <body>

onkeypress Клавиша нажата и отпущена. Для отмены

возвращает false

Элементы формы и <body>

onkeyup Клавиша отпущена Элементы формы и <body>

onload Загрузка документа завершена <body>, <frameset>, <img>

onmousedown Нажата кнопка мыши Большинство элементов

onmousemove Перемещение указателя мыши Большинство элементов

onmouseout Указатель мыши выходит за границы эле

мента

Большинство элементов

onmouseover Указатель мыши находится на элементе Большинство элементов

onmouseup Отпущена кнопка мыши Большинство элементов

onreset Запрос на очистку полей формы. Для пре

дотвращения очистки возвращает false

<form>

onresize Изменение размеров окна <body>, <frameset>

onselect Выбор текста <input>, <textarea>

onsubmit Запрос на передачу данных формы. Чтобы

предотвратить передачу, возвращает false

<form>

onunload Документ или набор фреймов выгружен <body>, <frameset>17.1. Базовая обработка событий 407

Другое существенное отличие делит события на аппаратнозависимые, связан

ные с мышью или клавиатурой, и аппаратнонезависимые события, которые мо

гут возбуждаться несколькими способами. Это различие особенно важно в плане

доступности (см. раздел 13.7), поскольку одни пользователи в состоянии задей

ствовать мышь, но не могут работать с клавиатурой, другие, наоборот, могут

применять клавиатуру и не могут мышь. Семантические события, такие как on

submit и onchange, практически всегда являются аппаратнонезависимыми: все

современные броузеры позволяют выполнять переход между полями HTML

форм как с помощью мыши, так и с помощью клавиатуры. События, которые

имеют в своих названиях слово «key» или «mouse», совершенно очевидно явля

ются аппаратнозависимыми. Если вы собираетесь использовать эти события,

возможно, следует реализовать обработчики для парных событий, чтобы обеспе

чить механизм обработки событий как мыши, так и клавиатуры. Примечатель

но, что событие onclick можно рассматривать как аппаратнонезависимое. Оно

не зависит от мыши, потому что активизация с помощью клавиатуры элементов

формы и гиперссылок тоже приводит к возбуждению этого события.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]