20444

Document Object Model

Доклад

Информатика, кибернетика и программирование

Модель DOM не накладывает ограничений на структуру документа. Любой документ известной структуры с помощью DOM может быть представлен в виде дерева узлов каждый узел которого представляет собой элемент атрибут текстовый графический или любой другой объект. Изначально различные браузеры имели собственные модели документов DOM не совместимые с остальными.

Русский

2013-07-25

54 KB

10 чел.

19 Document Object Model

DOM (от англ. Document Object Model — «объектная модель документа») — это не зависящий от платформы и языка программный интерфейс, позволяющий программам и скриптам получить доступ к содержимому HTML, XHTML и XML-документов, а также изменять содержимое, структуру и оформление таких документов.

Модель DOM не накладывает ограничений на структуру документа. Любой документ известной структуры с помощью DOM может быть представлен в виде дерева узлов, каждый узел которого представляет собой элемент, атрибут, текстовый, графический или любой другой объект. Узлы связаны между собой отношениями родительский-дочерний.

Изначально различные браузеры имели собственные модели документов (DOM), не совместимые с остальными. Для того, чтобы обеспечить взаимную и обратную совместимость, специалисты международного консорциума W3C классифицировали эту модель по уровням, для каждого из которых была создана своя спецификация. Все эти спецификации объединены в общую группу, носящую название W3C DOM.

Еще один интерфейс прикладного программирования, называемый JDOM, обеспечивает более высокий, чем W3C DOM, уровень для работы с XML документами на Java — www.jdom.org.

Уровни W3C DOM

Текущим уровнем спецификаций DOM является Уровень 2, но тем не менее некоторые части спецификаций Уровня 3 являются рекомендуемыми W3C.

Уровень 0 

Включает в себя все специфические модели DOM, которые существовали до появления Уровня 1, например document.images, document.forms, document.layers и document.all. Необходимо обратить внимание, что эти модели формально не являются спецификациями DOM, опубликованными W3C, а скорее являются информацией о том, что существовало до начала процесса стандартизации.

Уровень 1 

Базовые функциональные возможности DOM (HTML и XML) в документах, такие как получение дерева узлов документа, возможность изменять и добавлять данные.

Уровень 2 

Поддержка так называемого пространства имён XML <--filtered views--> и событий.

Уровень 3 

Состоит из шести различных спецификаций:

  1.  DOM Level 3 Core;
  2.  DOM Level 3 Load and Save;
  3.  DOM Level 3 XPath;
  4.  DOM Level 3 Views and Formatting;
  5.  DOM Level 3 Requirements;
  6.  DOM Level 3 Validation.

Эти спецификации являются дополнительными расширениями DOM.

Реализация DOM в веб-браузерах

Учитывая существование различных реализаций DOM в веб-браузерах, среди программистов распространена привычка проверять работоспособность тех или иных возможностей DOM для каждого конкретного браузера, и только потом использовать их. Код ниже иллюстрирует способ проверки на поддержку стандартов W3CDOM перед тем как запустить код, зависящий от результата этой проверки.

 

if (document.getElementById && document.getElementsByTagName) {

   // если методы getElementById и getElementsByTagName

   // доступны, то можно относительно точно предположить поддержку W3CDOM.

 

   obj = document.getElementById("navigation")

   // далее идёт другой код с использованием возможностей W3CDOM.

   // .....

}

Еще один фрагмент кода JavaScript, позволяющий проверить заявленную поддержку различных расширений DOM в конкретном браузере.

 

 function domImplementationTest(){

   var featureArray = ['HTML', 'XML', 'Core', 'Views',

                       'StyleSheets', 'CSS', 'CSS2', 'Events',

                       'UIEvents', 'MouseEvents', 'HTMLEvents',

                       'MutationEvents', 'Range', 'Traversal'];

   var versionArray = ['1.0', '2.0', '3.0'];

   var i;

   var j;

   if(document.implementation && document.implementation.hasFeature){

     for(i=0; i < featureArray.length; i++){

       for(j=0; j < versionArray.length; j++){

         document.write(

           'Поддержка расширения '+ featureArray[i] + ' версии ' + versionArray[j] + ' : ' + 

           (document.implementation.hasFeature(featureArray[i], versionArray[j]) ? 

           '<font style="color:green">true</font>' : '<font style="color:red">false</font>') + '<br/>'

         );

       }

       document.write('<br/>');

     }

   }

 }

Проблемы

Из-за несовместимости браузеров использование DOM иногда приводит к трудностям HTML-верстки и низкой надёжности страниц.


 

А также другие работы, которые могут Вас заинтересовать

36028. Слово как основная единица лексики. Лексика русского языка как система 34.5 KB
  Лексика русского языка как система. Слово основная значимая единица языка. Оно принадлежит лексикосемантическому уровню языка и состоит из единиц низших уровней фонем и морфем: фонемы образуют морфемы а морфемы складываются в слово. Хотя синтаксическая конструкция абстрактное понятие отвлеченное от выражения ее в виде реальных словосочетаний или предложений на это указывает и само слово конструкция многообразные синтаксические конструкции языка воплощаются всегда в конкретных сочетаниях слов и в предложениях.
36029. Художественное образование как феномен культуры 34 KB
  Содержание художественного образования включает: формирование культурноисторической компетентности подразумевающей изучение теории и истории искусства разных эпох и народов; формирование художественнопрактической компетентности подразумевающей овладение средствами художественной выразительности различных видов искусств; формирование художественного вкуса и оценочных критериев в контексте духовнонравственных и эстетических идеалов. Реализация содержания художественного образования происходит на трех уровнях: формирование отношения...
36030. Формы взаимодействия организмов 34 KB
  Ряд исследователей относят к симбиозу любое сожительство в том числе комменсализм паразитизм а к мутуализму взаимовыгодное сожительство. Подобно паразитизму и симбиозу комменсализм обычно связан с добыванием пищи или поиском необходимого укрытия. Паразитизм форма взаимоотношений между организмами растениями животными микроорганизмами относящимися к разным видам из которых один паразит использует другого хозяина в качестве среды обитания и источника пищи возлагая при всём этом частично или полностью на хозяина регуляцию...
36031. Классификация видов экономического анализа. Особенности в содержании, информационной базе и организации отдельных видов экономического анализа 34 KB
  Классификация видов экономического анализа. Особенности в содержании информационной базе и организации отдельных видов экономического анализа По времени: 1. Ретроспективный исторический посмертный анализ; 2. Оперативный ситуационный анализ; 3.
36032. Происхождение РЯ и основные этапы его становления 31 KB
  В своем историческом развитии русский язык прошел несколько этапов: 1 выделение восточнославянских племен предков русских украинцев и белорусов из общеславянского единства и образование древнерусского языка VI XIV вв. 2 распад древнерусского языка и возникновение языка русской народности XIV XVII вв. и 3 формирование и развитие национального русского языка 2я половина XVII XX в. Первый этап формирования будущего русского языка связан с Киевской Русью феодальным государством восточнославянских племен диалекты которых...
36033. Предмет изучения стилистики 33.5 KB
  Существуют стилистика языка и стилистика речи лингвостилистика и литературоведческая стилистика стилистика от автора и стилистика восприятия стилистика декодирования и др. Стилистика языка исследует с одной стороны специфику языковых подсистем называемых функциональными стилями и подъязыками и характеризующихся своеобразием словаря фразеологии и синтаксиса и с другой стороны экспрессивные эмоциональные и оценочные свойства различных языковых средств. Стилистика речи изучает отдельные реальные тексты рассматривая каким образом...
36034. Глобальные экологические проблемы современности. Пути их преодоления. Концепция устойчивого развития 33 KB
  Концепция устойчивого развития 1 Утилизация радиоактивных отходов Решение:Новые ядерные технологии сконструированны таким системным научным методом согласованного взаимодействия единства противоположностей процессов синтезараспада становятся управляемыми и безотходными. Концепция устойчивого развития основывается на пяти основных принципах. Триединая концепция устойчивого развития объединение 3х основных точек зрения экономическая социальная экологическая. развития у недоминирующих культур.
36036. Политическая мысль эпохи Возрождения. Н. Макиавелли 31.5 KB
  Идеал 2х направлений: национально независимое суверенное госво в форме республики. В борьбе двух зарождавшихся идеологий либерализма и коммунизма победил либерализм и стал господствующей идеологией в 20 в. Он вводит понятие для определения госва stto госво это пол оргя обва а политика умение управлять. Определил предмет п науки учреждение государств сохранение и управление им создание армии ведение войны.