В этой главе мы рассматриваем дополнительные интерфейсы базовой модели DOM. Эти интерфейсы предназначены для XML-документов, поэтому читатели, которых интересует только работа с HTML-документами, могут эту главу безболезненно пропустить. Ее содержимое нам понадобится, когда мы дойдем до описания XML DOM.
Секция CDATA: интерфейс CDATASection
Поддержка : | | Соответствует стандарту (XMLDOMCDATASection). | | | Соответствует стандарту. |
Интерфейс CDATASection реализует секции CDATA XML-документов. Он наследует все свойства и методы интерфейса Text и содержит текст секции CDATA, т. е. все, что находится между ограничителями <![CDATA[</tt> и <tt>]]>. Собственныхсвойств и методов у него нет. Основным отличием узлов данного типа от узлов типа Text являетсято, что при нормализации узлов методом Node.normalize соседние секции CDATA не сливаются в одну секцию.
Тип документа: интерфейс DocumentType
Поддержка : | | Соответствует DOM 1 (XMLDOMDocumentType). | | | Соответствует DOM 2. |
Каждый объект типа Document имеет атрибут doctype, значением которого является либо null, либо объект DocumentType. Интерфейс DocumentType обеспечивает доступ ко всем нотациям, определенным для данного документа. DOM 2 не допускает редактирования узлов этого типа; они предназначены только для чтения. Интерфейс DocumentType наследует методы и свойства интерфейса Node и имеет дополнительно следующие свойства.
Свойства интерфейса DocumentTypeСвойство | Изменяемое | Модель | Описание |
---|
entities | Нет | DOM 1 | Список деклараций разделов. | internalSubset | Нет | DOM 2 | Внутреннее подмножество DTD. | name | Нет | DOM 1 | Имя DTD. | notations | Нет | DOM 1 | Список деклараций нотаций. | publicId | Нет | DOM 2 | Публичный идентификатор DTD. | systemId | Нет | DOM 2 | Системный идентификатор DTD. |
Свойство entities
Синтаксис:объект.entities Изменяемое: нет
Поддержка : | | Только для XML-документов. | | | Соответствует стандарту. |
Свойство entities возвращает объект типа NamedNodeMap, содержащий список всех деклараций разделов в документе, как внутренних, так и внешних. Параметрические разделы в список не включаются. Каждому разделу соответствует объект типа Entity. Пример:
alert(document.doctype.entities.length);
Свойство internalSubset
Синтаксис:объект.internalSubset Изменяемое: нет
Поддержка : | | Не поддерживается. | | | Соответствует стандарту. |
Свойство internalSubset возвращает текст внутреннего подмножества DTD в виде строки. Фактически возвращаемое значение определяется конкретной реализацией XML-процессора. Пример:
alert(document.doctype.internalSubset);
Свойство name
Синтаксис:объект.name Изменяемое: нет
Поддержка : | | Только для XML-документов. | | | Соответствует стандарту. |
Свойство name возвращает строку, содержащую имя DTD, т. е. имя, непосредственно следующее за ключевым словом !DOCTYPE. Пример:
alert(document.doctype.name);
Свойство notations
Синтаксис:объект.notations Изменяемое: нет
Поддержка : | | Только для XML-документов. | | | Соответствует стандарту. |
Свойство notations возвращает объект типа NamedNodeMap, содержащий список всех деклараций нотаций в документе. Каждой нотации соответствует объект типа Notation. Пример:
alert(document.doctype.notations.length);
Свойство publicId
Синтаксис:объект.publicId Изменяемое: нет
Поддержка : | | Не поддерживается. | | | Соответствует стандарту. |
Свойство publicId возвращает строку, содержащую публичный идентификатор внешнего подмножества DTD. Пример:
alert(document.doctype.publicId);
Свойство systemId
Синтаксис:объект.systemId Изменяемое: нет
Поддержка : | | Не поддерживается. | | | Соответствует стандарту. |
Свойство systemId возвращает строку, содержащую системный идентификатор внешнего подмножества DTD. Пример:
alert(document.doctype.systemId);
1 2 3
8 8 8
| |