HTML DOM СвойствоОбъект


Узлы HTML DOM

В HTML DOM (объектной модели документа) всё являетсяузлом:

  • Документ является узлом документа
  • Все элементы HTML являются узлами элементов
  • Все атрибуты HTML являются узлами атрибутов
  • Текст, вставленный в HTML-элементы, является текстовыми узлами
  • Комментарии являются узлами комментариев

Объект Attr

В HTML DOM,объект Attrпредставляет HTML-атрибут.

HTML-атрибуты всегда принадлежат HTML-элементам.


Объект NamedNodeMap

В HTML DOM, объектNamedNodeMapпредставляет неупорядоченный список узлов.

Мы можем получить доступ к узлам в NamedNodeMap по имени узла.


Поддержка браузеров

Internet ExplorerFirefoxOperaGoogle ChromeSafari

Все основные браузеры поддерживают объект Attr и объект NamedNodeMap.


Свойство / Метод Описание
attr.isId Свойство isId возвращает true, если атрибут имеет тип ID, в противном случае возвращает false.
attr.name Возвращает имя атрибута
attr.value Задаёт или возвращает значение атрибута
attr.specified Возвращает true, если атрибут задан, в противном случае возвращает false.
   
nodemap.getNamedItem() Возвращает указанный узел атрибута из списка узлов.
nodemap.item() Возвращает узел по указанному индексу в списке узлов.
nodemap.length Возвращает количество узлов в списке узлов.
nodemap.removeNamedItem() Удаляет указанный узел атрибута
nodemap.setNamedItem() Устанавливает указанный узел атрибута (по имени)


Предупреждение DOM 4 !!!

В W3C DOM Core объект Attr (атрибут) наследует все свойства и методы объекта node.

В DOM 4 объект Attr (атрибут) больше не наследует от объекта node.

Для долгосрочного качества кода следует избегать использования свойств и методов объекта node для объектов атрибутов:

Свойство / Метод Причина избегать
attr.appendChild() У атрибута нет дочерних узлов
attr.attributes У атрибута нет атрибутов
attr.baseURI Вместо этого используйте document.baseURI
attr.childNodes У атрибута нет дочерних узлов
attr.cloneNode() Вместо этого используйте attr.value
attr.firstChild У атрибута нет дочерних узлов
attr.hasAttributes() У атрибута нет атрибутов
attr.hasChildNodes У атрибута нет дочерних узлов
attr.insertBefore() У атрибута нет дочерних узлов
attr.isEqualNode() Не имеет смысла
attr.isSameNode() Не имеет смысла
attr.isSupported() Обычно true
attr.lastChild У атрибута нет дочерних узлов
attr.nextSibling У атрибута нет соседних узлов
attr.nodeName Вместо этого используйтеattr.name
attr.nodeType Обычно 2 (ATTRIBUTE-NODE)
attr.nodeValue Используйтеattr.value вместо этого
attr.normalize() У атрибута нет спецификации
attr.ownerDocument Обычно ваш HTML-документ
attr.ownerElement HTML-элемент, который вы использовали для доступа к атрибуту
attr.parentNode HTML-элемент, который вы использовали для доступа к атрибуту
attr.previousSibling У атрибута нет соседних узлов
attr.removeChild У атрибута нет дочерних узлов
attr.replaceChild У атрибута нет дочерних узлов
attr.textContent Используйтеattr.value вместо этого
Другие расширения