Скрипты, составленные на языке JavaScript, могут вызываться в ответ на возникновение различных событий, связанных с объектами webстраницы: формой, гипертекстовой ссылкой или даже с окном, содержащим текущий документ. Примерами внешних событий, для которых могут вызываться скрипты JavaScript, являются:
- • окончание загрузки документа в браузере (onload); данное событие связано с объектом window;
- • щелчок кнопкой мыши на объекте (onclick); данное событие может быть связано с интерактивным элементом формы или с гипертекстовой ссылкой;
- • получение объектом фокуса ввода (onfocus); данное событие может быть связано с объектами типа Text, Password и с другими интерактивными элементами;
- • перемещение курсора мыши над объектом (onmouseover).
Обработка события производится с помощью специально предназначенной для этого функции, называемой обработчиком события. Для каждого события JavaScript может быть задан свой обработчик.
Для связывания события с обработчиком используются атрибуты тэга, описывающего объект, с которым связано событие. Задание обработчика для события выполняется следующим образом: on[имя_события]="команды_обработчика" .
Например, для того чтобы сценарий реагировал на щелчок мышью, используется обработчик с именем onClick: для обработки события, заключающегося в получении фокуса ввода, — обработчик onFocus. Если необходимо обработать событие, заключающееся в получении фокуса полем ввода, то тэг, описывающий этот элемент управления, должен иметь примерно следующий вид:
В данном случае обработка события производится с помощью функции handleFocusQ. В принципе, обработчиком может быть не только функция, но и любая последовательность команд JavaScript в виде составного оператора. Следующий пример демонстрирует обработку события, связанного с наведением курсора мыши на гиперссылку:
<�а href = «myhp.edu» .
onMouseOver="alert ('Co6biTne onMouseOver'); return false" >
Обработчик события можно назначить для некоторого элемента страницы и в коде скрипта. Например,.
Ha>Нажми меня!
document.getElementByld ('test123').onclick = function () {alert (this.id);}.