События, связанные с взаимодействием с пользователем

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

С кнопками мыши связаны следующие события:

· click – наступает при щелчке мышью на элементе страницы или на самой странице;

· dblclick – наступает при двойном щелчке мышью на элементе страницы или на самой странице;

· mousedown – наступает, когда пользователь нажимает кнопку мыши на элементе страницы или на самой странице;

· mouseup – наступает, когда пользователь отпускает ранее нажатую кноп­ку мыши;

· mousemove – наступает, когда пользователь перемещает мышь над элементом страницы или над самой страницей (это событие вы­зывается при любом перемещении мыши);

· mouseover – наступает, когда пользователь помещает мышь над элемен­том страницы;

· mouseout – наступает, когда пользователь убирает мышь с элемента страницы.

При нажатии клавиши клавиатуры генерируются следующие события:

· keydown – наступает, когда пользователь нажимает и удерживает клавишу на клавиатуре;

· keyup – наступает, когда пользователь отпускает нажатую ранее клавишу на клавиатуре;

· keypress – наступает, когда пользователь нажимает клавишу на клавиатуре (от keydown отличается тем, что возвращает значение кода символа в кодировке Unicode).

Многие события вызываются подряд друг за другом. Например, при перемещении мыши над элементом страницы последовательность наступления событий будет такой:

mouseover, mousemove, mouseout.

Следует отметить, что mousemove наступает при любом, даже небольшим перемещении мыши.

При щелчке мышью на объекте последовательность событий будет следующей:

mousedown, mouseup, click.

т. е. обработка событий, связанных с mousedown и mouseup, будет выполняться прежде обработки события, связанного с click.

Если пользователь щелкает дважды, то последовательность событий сле­дующая:

mousedown, mouseup, click, dblclick.

Как видно, при двойном щелчке раньше события dblclick наступает событие click. Это можно использовать в сценариях и, вместе с тем, придется это учитывать, чтобы не прореагировать на обычный щелчок, если нужна реак­ция на двойной щелчок.

При нажатии клавиши на клавиатуре последовательность наступления со­бытий будет следующей:

keydown, keypress, keyup.

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

Все события, связанные с взаимодействием с пользователем, являются «всплывающими». Действие по умолчанию всех этих событий, за исключением события mousemove, можно отменить.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: