- •1.Модель osi
- •2.Стек tcp/ip
- •3.Адресация в сетях tcp/ip
- •4. Ip адресация, понятие маски
- •5.Заголовок ip пакетов
- •6.Классификация Web-технологий
- •7.Статистические Web-технологии. Основы технологии html
- •8.Статистические Web-технологии. Таблицы html
- •9.Статистические Web-технологии. Фреймы html
- •10. Статистические Web-технологии. Формы html
- •1) Создание простой формы
- •2) Флажок (checkbox)
- •5) Выпадающий список (select)
- •6) Текстовое поле (text)
- •7) Поле для ввода пароля (password)
- •8) Многострочное поле ввода текста (textarea)
- •9) Скрытое текстовое поле
- •10) Кнопка отправки формы (submit)
- •11) Кнопка для загрузки файлов (browse)
- •12) Рамка (fieldset)
- •11. Статистические Web-технологии. Основы технологии css
- •12. Статистические Web-технологии. Css свойства текста
- •13. Статистические Web-технологии. Css свойства шрифта
- •14. Статистические Web-технологии. Css свойства таблиц
- •Vertical-align
- •15. Динамические Web-технологии. Основы технологии Java Script
- •16. Динамические Web-технологии. Java Script, глобальные и локальные переменные. Типы данных
- •17. Динамические Web-технологии. Java Script, операции над числовыми и строковыми типами данных
- •18. Динамические Web-технологии. Java Script, массивы.
- •19. Динамические Web-технологии. Java Script, операторы условного перехода
- •20.Динамические Web-технологии. Java Script, циклы.
- •21.Динамические Web-технологии. Java Script, обработка событий
- •22.Протокол http
21.Динамические Web-технологии. Java Script, обработка событий
Практически все JavaScript-приложения выполняют те или иные действия, откликаясь на различные события. Событие - это сигнал от браузера о том, что что-то произошло. Есть множество самых различных событий:
DOM-события, которые инициируются элементами DOM. Например, событие click происходит при клике на элементе, а событие mouseover - когда указатель мыши появляется над элементом,
События окна. Например событие resize - при изменении размера окна браузера,
Другие события, например load, readystatechange. Они используются, скажем, в технологии AJAX.
Именно DOM-события связывают действия, происходящие в документе, с кодом JavaScript, тем самым обеспечивая динамический веб-интерфейс.
Назначение обработчиков
Для того, чтобы скрипт реагировал на событие - нужно назначить хотя бы одну функцию-обработчик. Обычно обработчики называют "on+имя события", например: onСlick.
Нужно сразу отметить, что JavaScript - однопоточный язык, поэтому обработчики всегда выполняются последовательно и в общем потоке. Это значит, что при установке обработчиков двух событий, которые возникают на элементе одновременно, например mouseover (мышь появилась над элементом) и mousemove (мышь двигается над элементом), их обработчики будут выполнены последовательно.
Существует несколько способов назначать обработчик на конкретное событие элемента:
1) Через атрибут HTML-тега
Обработчик события можно указать в виде inline-записи, прямо в атрибуте onСобытие.
Например, для обработки события click на кнопке input, можно назначить обработчик onСlick вот так:
<input id="b1" value="Нажми Меня" onclick="alert('Спасибо!');" type="button"/>
У этого способа установки обработчика есть и минусы. Как только обработчик начинает занимать больше одной строки - читабельность резко падает.
Можно назначить и функцию. Например, пусть при клике на кнопку input запускается функция count_rabbits(). Для этого запишем вызов функции в атрибут onClick.
2) Через свойство события
Самый близкий родственник описанного выше способа - установка функции-обработчика через свойство on cобытие соответствующего элемента. Этот способ тоже будет работать в любом браузере с поддержкой JavaScript.
Для этого нужно:
1. получить элемент
2. назначить обработчик свойству on+имя
Вот пример установки обработчика события click на элемент с id="myElement":
document.getElementById('myElement').onclick = function() {
alert('Спасибо')
}
<input id="myElement" type="button" value="Нажми меня"/>
Конечно, можно и не создавать анонимную функцию, а использовать любую уже готовую:
function doSomething() {
alert('Спасибо')
}
document.getElementById('button').onclick = doSomething;
Все вызовы типа getElementById должны запускаться после описания соответствующего HTML-узла, а лучше - после окончания загрузки страницы.
Описанная установка обработчика через свойство - очень популярный и простой способ.
У него есть один недостаток: на элемент можно повесить только один обработчик нужного события.