Ядро DOM в деталях
Наконец, следует заметить, что ни одна DOM не будет полной без способа включения инструкций обработки. Интерфейс Processinginstruction является расширением Node и добавляет два своих собственных свойства: target и data.
В главе 2 мы видели, что свойство target является именем приложения, которому нужно отправить PI, a data — это сама инструкция. Свойство data допускает изменения, а вот target может работать только в режиме чтения.
Интерфейсы comment и CDATASection — это два наиболее простых из тех, которые мы опишем в данной главе. Comment расширяет CharacterData, a CDATASection расширяет Text, но ни один из них не представляет никаких новых свойств или методов. Работа с комментарием или лом CDATA не отличается от работы с любым другим текстом.
Как всем хорошо известно, работа с XML-документами включает много с текстом: иногда в разделе XML-документа PCDATA, иногда в, таких как значения атрибутов или комментарий. Для этих целей в описано два интерфейса:
■ Интерфейс CharacterData — включает целый ряд свойств и м для работы с текстом
■ Интерфейс Text — является расширением CharacterData и исключительно для PCDATA в XML-документе
Как всем хорошо известно, работа с XML-документами включает много ты с текстом: иногда в разделе XML-документа PCDATA, иногда в других так, таких как значения атрибутов или комментарий. Для этих целей в описано два интерфейса:
Интерфейс CharacterData — включает целый ряд свойств и м для работы с текстом
Интерфейс Text — является расширением CharacterData и исключительно для PCDATA в XML-документе
Хотя практически все интерфейсы в DOM имеют имена, написанные полностью, в какой-то причудливый момент терминологической слабости интерфейс для атрибутов был подвергнут сокращению до Attr.
Если не обращаться к каждой части документа как к "узлу", то в большинстве случаев придется обращаться к частям документа как к элементам, поэтому DOM, конечно же, имеет интерфейс Element.
В дополнение ко всем свойствам и методам, доступным из интерфейса Node, Element предлагает также свойство tagName и метод getElementsByTagName (). Свойство tagName позволяет получить абсолютно такие же результаты, что и свойство nodeName Node, a getElementsByTagName() работает почти так же, как одноименный метод интерфейса Document.
Нам уже приходилось несколько раз упоминать интерфейс NodeList, теперь поговорим о нем подробнее. Многие свойства и методы в DOM возвращают не один узел, а целый упорядоченный набор Nodes (узлов), для чего и был создан интерфейс NodeList.
На самом деле это очень простой интерфейс: в него входят одно свойство и один метод.
я Свойство length возвращает число элементов в списке NodeList.
Метод item возвращает конкретный элемент списка. В качестве паря метра необходимо задать индекс требуемого узла.
Как мы уже знаем, XML-документ может иметь только один корневой фрагмент. Однако, работая с XML-информацией, иногда бывает удобно иметь сколько не совсем правильно оформленных фрагментов XML, собран вместе во временном хранилище. Например, может понадобиться сначала задать несколько узлов, а затем вставить их в дерево документа единой пой. Или возникнет необходимость удалить некоторое количество узлов документа, но сохранить их для последующей вставки, что-то вроде опер "си1"(вырежи) и "paste" (вставь). Вот это как раз и обеспечивает DocumentFragment.
Интерфейс DOMImplementation обеспечивает методы, применяемые к любому документу из этой реализации DOM. Как и для подавляющего большинства! других типов объектов DOM, нет прямой возможности создать объект типа! DOMImplementation. Его можно получить из свойства implementation интерфейса Document.
Интерфейс Document представляет XML-документ в целом. Он расширяет Node, поэтому любые свойства и методы Node доступны и для Document. Для Document узлом служит корень документа, но не корневой. (Помните, что корень для XML-документа — это концептуальная которая содержит все, что входит в документ, в том числе и корневой элемент.
Меню
- XML в браузере: каскадные таблицы стилей
- XML-декларация
- XPath
- XSLT и XPath
- Анализ XML
- Атрибуты
- Внутреннее устройство XSLT
- Внутреннее устройство XSLT
- Зачем нам нужны таблицы стилей
- Императивное программирование против декларативного программирования
- Инструкции обработки
- Интерфейсы DOM
- Каскадные таблицы стилей и XML
- Комментарии
- Недопустимые символы в PCDATA
- Правильно оформленный XML
- Пустые элементы
- Совместное использование XSLT и CSS
- Таблицы стилей для звукового вывода
- Таблицы стилей и HTML
- Теги, текст и элементы
- Что такое DOM
- Что такое XSL
- Элементы XSLT и их использование
- Ядро DOM в деталях
