§ 23. Элементы JavaScript для создания веб-страниц
23.1. Обработка событий
Основная задача при создании динамических веб-страниц в основном сводится к выбору объектов и выполнению над ними различных действий. В сценариях JavaScript используются объекты браузера, с помощью которых можно взаимодействовать с элементами веб-страницы и самим браузером. Основные из объектов браузера:
Средства для работы с содержимым веб-страниц предоставляет объектная модель документа (DOM). Все элементы, составляющие веб-страницу, рассматриваются в этой модели, как иерархически организованные. Каждый элемент страницы представляет собой объект. Каждый объект обладает определенными свойствами и располагает своими методами. Корневой составляющей объектной модели документа является объект document. Именно объект document используется для получения, изменения или добавления содержимого в html-документ, а так же для обработки событий в этом документе. К элементам html-документа можно получить доступ как к свойствам объекта document (пример 23.1). С назначением методов объекта document можно ознакомиться в Приложении. При динамическом формировании контента веб-страницы необходимо решать задачи добавления различных веб-элементов на страницу. При создании html-элемента средствами JavaScript элемент создается только в памяти компьютера и не отображается на странице, пока не будут применены методы, описанные в скрипте. В примере 23.2 рассматривается использование метода, который позволяет разместить на веб-странице какой-либо контент. В процессе добавления элементов на веб-страницу можно выделить три этапа: создание элемента, добавление контента в элемент и размещение элемента на странице (пример 23.3). События отражают взаимодействие пользователя с интерфейсом (клик, наведение мыши, ввод текста и т. д.). Некоторые часто используемые веб-события:
У любого события есть цель события. Цель события — это объект, в котором возникло событие или с которым это событие связано. С любым событием можно связать функцию (одну или более), которая будет автоматически вызываться браузером при возникновении события. Функция, которая используется для обработки события, называется обработчик события. Общий вид записи обработчика события: <элемент событие = "код JS"> Назначить обработчик событий проще всего в виде атрибута html-элемента (примеры 23.4—23.6). При назначении обработчика события в виде атрибута html-элемента может быть использовано ключевое слово this, которое указывает на этот элемент ( примеры 23.4 и 23.5). В примере 23.6 в записи обработчиков события onclick использована ссылка на функцию getElementById(), которая возвращает ссылку на html-элемент по его идентификатору — значению атрибута id. |
Пример 23.1. Свойства объекта document, соответствующие элементам html-документа.
Пример 23.2. Вывод на веб-страницу методом document.write(). 1. Вывод текста с использованием внедрения. Скрипт:
Диалоговое окно: Веб-страница: 2. Вывод текста в цикле Скрипт:
Веб-страница: Пример 23.3. Добавление на страницу блока с текстом. Скрипт (должен располагаться в теле html-документа):
Результат работы скрипта аналогичен работе следующего html-кода:
Пример 23.4. Использование ключевого слова this в обработчике событий для изменения цвета текста.
Пример 23.5. Использование ключевого слова this в обработчике событий для замены одного изображения другим. Html-код:
Реализация событий: а) указатель мыши вне изображения б) указатель мыши на изображении Пример 23.6. Использование функции getElementById() и события onclick. Скрипт:
Html-код:
Страница после загрузки: Реализация событий: |