Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Voprosy_Inet.doc
Скачиваний:
13
Добавлен:
13.04.2015
Размер:
1.05 Mб
Скачать
      1. Введение в dom

При описании каскадных таблиц стилей мы уже ввели рассмотрение HTML-документа какдерева элементов. Приведем еще раз пример, иллюстрирующий этот подход. Пусть наш документ имеет вид:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">

<HTML>

<HEAD>

<TITLE>Моя домашняя страница</TITLE>

</HEAD>

<BODY>

<H1>Моя домашняя страница</H1>

<P>Добро пожаловать!</P>

</BODY>

</HTML>

Тогда мы можем представить его в виде следующего дерева:

Корнем этого дерева является элемент HTML, который имеет двух детей — HEAD и BODY. Элемент HEAD является отцом элемента TITLE, а элемент BODY — отцом элементов H1 и P(два последних элемента называются братьями, причем H1 является старшим братом, а P —младшим). Все элементы дерева являются потомками корня, а тот является их предком. При этом все элементы и тексты, образующие их содержимое, являются узлами дерева документа.

Каждый элемент данного дерева соответствует элементу HTML и, следовательно, имеет тег(и), содержимое и набор атрибутов. Для перехода к объектной модели документа остается сделать единственный шаг: назвать все элементы дерева объектами, а их атрибуты сделать доступными для чтения и для изменения из сценариев и аплетов. В результате дерево элементов HTML-документа становится динамически управляемым; более того, теперь мы можем легко добавлять к каждому элементу новые свойства, помимо стандартных атрибутов HTML.

Именно такой подход был положен в основу динамической модели HTML обозревателей Microsoft, а затем принят за основу стандартов W3C, получивших название объектная модель документа (Document Object Model или DOM). При этом W3C расширил понятие DOM на любые XML-документы, рассматривая HTML DOM как специализированный частный случай с дополнительными возможностями. Таким образом, DOM — это модель HTML- и XML-документов, независимая от платформы и языка программирования, которая определяет:

  • интерфейсы и объекты, которые используются для представления документа и манипулирования им;

  • семантику этих интерфейсов и объектов, включая их атрибуты и реакцию на события;

  • взаимосвязи между этими интерфейсами и объектами.

На сегодняшний день W3C стандартизовал DOM первого и второго уровней (DOM 1 и DOM 2); в стадии рабочего проекта находится DOM 3. Эти аббревиатуры соответственно обозначают следующее:

  • DOM 1 описывает базовое представление XML- и HTML-документов в виде деревьев объектов;

  • DOM 2 расширяет базовые интерфейсы DOM 1 и добавляет к ним поддержку событий и стилей;

  • DOM 3 описывает загрузку и синтаксический анализом документов, а также их отображение и форматирование.

Учитывая текущее состояние вещей, мы рассматриваем здесь только DOM 2 (и содержащуюся в нем DOM 1). DOM 2 состоит из следующих групп взаимосвязанных интерфейсов:

  • Core — базовые интерфейсы, определяющие представление любого XML-документа в виде дерева;

  • View — интерфейсы, описывающие возможные отображения документа;

  • Event — интерфейсы, определяющие порядок генерации и обработки событий;

  • Style — интерфейсы, определяющие применение к документам таблиц стилей;

  • Traversal & Range — интерфейсы, определяющие прохождение дерева документа и манипулирование областями его содержимого;

  • HTML — интерфейсы, определяющие представление HTML-документа в виде дерева.

 См. также WDH+: Программы просмотра дерева объектов.

Начнем с определения базовых интерфейсов, лежащих в основе всех дальнейших спецификаций.

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