Добавляем...


Варианты DOM
Впредыдущей главе мы обсудили объектные модели, поддерживаемые двумя основными браузерами. Эти объектные модели включают объекты для окон, документов, форм, изображений и т.д. Мы указали, что эти объекты соответствуют как возможностям браузера, так и возможностям документа (X)HTML и таблицам стилей. Главной проблемой ориентированных на браузеры объектных моделей является то, что только производитель решает, какие возможности предоставить программисту и как именно это сделать. Чтобы преодолеть несовместимость браузеров, о которой говорилось в главе 9, консорциум W3C предложил стандарт, связывающий (X)HTML- или XML-документ с иерархией объектов документа, предлагаемой программисту. Соответствующая модель получила название объектной модели документа — сокращенно модели DOM (см. www.w3.org/DOM). Модель DOM обеспечивает программный интерфейс приложения (Application Programming Interface — API), открывающий таким языкам программирования, как JavaScript, доступ к любому элементу Web-страницы (включая ее дескрипторы, атрибуты, стили и содержимое). В этой главе мы рассмотрим основные преимущества DOM — от исследования структуры документа до получения доступа к типичным свойствам и методам. Мы покажем, что ключом к освоению DOM является глубокое понимание (X)HTML и CSS. И хотя стандарт DOM направлен в будущее, когда создание независимых от браузера сценариев будет вызывать меньше проблем, производители браузеров только недавно стали учитывать стандарты Web, а браузеры имеют в этом отношении множество дефектов. Примеры этой главы должны работать в большинстве Web-браузеров поколения 5.x (или более новых), но могут возникать и ошибки, так что используйте предлагаемые ниже примеры с учетом этого.
Варианты DOM
Чтобы преодолеть конфликтность объектных моделей, представленных в предыдущей главе, консорциум W3C определил три уровня DOM.
  • DOM уровня 0. Грубо говоря, это эквивалент того, что было предложено в Netscape 3.0 и Internet Explorer 3.0. Мы называем этот стандарт DOM классической, или традиционной, объектной моделью JavaScript. Указанная форма DOM -поддерживает общие коллекции объектов документа (forms [ ], images [ ], anchors [ ], links [ ] и applets [ ] ), и она уже была представлена в предыдущей главе.
  • DOM уровня 1. Обеспечивает возможность работы со всеми элементами документа посредством стандартного набора функций. В модели DOM уровня 1 представлены все элементы, и все части страницы открыты для чтения и записи в любое время. Здесь обеспечиваются возможности, подобные тем, что предлагает коллекция document. all [ ] в Internet Explorer, но модель DOM уровня 1 является стандартизованной и обеспечивает совместимость (в отношении браузеров).
  • DOM уровня 2. Обеспечивает более совершенные возможности доступа к элементам страницы, прежде всего, связанным с XML, путем объединения моделей DOM уровня 0 и уровня 1 и добавления возможностей доступа к таблицам стилей для работы с ними. Эта форма DOM предлагает также усовершенствованную модель событий и менее известные расширения, такие как операции обхода древовидной структуры и работы с диапазонами. К сожалению, за исключением доступа к таблицам стилей, другие возможности DOM уровня 2 не поддерживаются типичными Web-браузерами, даже теми, для которых провозглашается просто фантастическая поддержка стандартов.
Другим подходом к пониманию DOM, как это определено консорциумом W3C, является разделение концепции DOM на следующие пять категорий.
  • DOM Core (ядро DOM). Задает типовую модель в виде древовидной структуры для просмотра и изменения документа, содержащего элементы разметки.
  • DOM HTML. Определяет расширение ядра DOM для работы с HTML. Расширение DOM HTML обеспечивает возможности работы с документами HTML, используя синтаксис, типичный для традиционных объектных моделей JavaScript. В основном, это DOM уровня 0 плюс средства работы с объектами, соответствующими элементам HTML.
  • DOM CSS. Определяет интерфейсы, необходимые для программного управления правилами CSS.
  • DOM Events (события DOM). Добавляет в DOM средства обработки событий. Такими событиями могут быть как привычные события интерфейса пользователя, например щелчки кнопки мыши, так и специфические события, связанные с самой моделью DOM, происходящие при модификации дерева документа.
  • DOM XML. Определяет расширение ядра DOM для работы с XML. Расширение DOM XML призвано обеспечить решение специфических задач XML — для работы с разделами CDATA, инструкциями, пространством имен и т.д. Согласно спецификации DOM, можно проверить доступность


добавить комментарий
(без перезагрузки и регистрации)


10 случайных разделов

Что ищем на сайте ?


Примеры кода на сайте







@ 2008-2011 Amber
При использовании материалов ссылка на сайт обязательна
Яндекс.Метрика