English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Атрибут nodeType является только чтением и возвращает тип узла в виде числа.
Атрибут nodeType можно использовать для различия между различными типами узлов, такими как элементы, текст и комментарии.
Если узел является элементом, то атрибут nodeType возвращает 1.
Если узел является атрибутом, то атрибут nodeType возвращает 2.
Если узел является текстовым узлом, то атрибут nodeType возвращает 3.
Если узел является комментарием, то атрибут nodeType возвращает 8.
node.nodeType
var x = document.getElementById("myPara").nodeType;Проверьте, посмотрите‹/›
Все браузеры полностью поддерживают атрибут nodeType:
Атрибут | |||||
nodeType | Да | Да | Да | Да | Да |
Возвратное значение: | Число, представляющее тип узла. |
---|---|
Версия DOM: | Уровень DOM 1 |
Документ, элемент, атрибут и другие аспекты HTML или XML документов имеют различные типы узлов.
Существует 12 различных типов узлов, у которых могут быть подузлы различных типов:
Тип узла | Описание | Дочерние узлы | |
---|---|---|---|
1 | Element | Представляет элемент | Element, Text, Comment, ProcessingInstruction, CDATASection, EntityReference |
2 | Attr | Представляет атрибут | Text, EntityReference |
3 | Text | Представляет текстовое содержимое элемента или атрибута. | None |
4 | CDATASection | Представляет часть CDATA в документе (текст, который не будет обработан анализатором). | None |
5 | EntityReference | Представляет ссылку на сущность. | Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference |
6 | Entity | Представляет сущность. | Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference |
7 | ProcessingInstruction | Представляет обработку инструкций. | None |
8 | Comment | Представляет комментарий. | None |
9 | Document | Представляет весь документ (корневой узел DOM-дерева). | Element, ProcessingInstruction, Comment, DocumentType |
10 | DocumentType | Предоставляет интерфейс для实体, определенных для документа | None |
11 | DocumentFragment | Представляет легковесный объект Document, который может容纳 часть документа | Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference |
12 | Notation | Представляет символ, объявленный в DTD. | None |
Для каждого типа узла возвращает значения свойств nodeName и nodeValue:
Тип узла | nodeName возвращает | nodeValue возвращает | |
---|---|---|---|
1 | Element | Имя элемента | null |
2 | Attr | Имя属性 | Значение属性 |
3 | Text | #text | Содержимое узла |
4 | CDATASection | #cdata-section | Содержимое узла |
5 | EntityReference | Имя ссылки на实体 | null |
6 | Entity | Имя实体 | null |
7 | ProcessingInstruction | target | Содержимое узла |
8 | Comment | #comment | Текст комментария |
9 | Document | #document | null |
10 | DocumentType | Имя типа документа | null |
11 | DocumentFragment | #document фрагмент | null |
12 | Notation | Имя символа | null |
Тип узла | Именованные константы |
---|---|
1 | ELEMENT_NODE |
2 | ATTRIBUTE_NODE |
3 | TEXT_NODE |
4 | CDATA_SECTION_NODE |
5 | ENTITY_REFERENCE_NODE |
6 | ENTITY_NODE |
7 | PROCESSING_INSTRUCTION_NODE |
8 | COMMENT_NODE |
9 | DOCUMENT_NODE |
10 | DOCUMENT_TYPE_NODE |
11 | DOCUMENT_FRAGMENT_NODE |
12 | NOTATION_NODE |
Этот пример проверяет, является ли первый узел элемента document комментарием, если нет, то отображается сообщение:
var node = document.documentElement.firstChild; if (node.nodeType != Node.COMMENT_NODE) { alert("Вы должны хорошо комментировать свой код!"); }Проверьте, посмотрите‹/›
Возврат названия первого ребенка div, типа и значения узла:
<div id="div-1">Это элемент div.</div> <script> var x = document.getElementById("div-1").firstChild; var txt = ""; txt += "Имя узла: " + x.nodeName + "<br>"; txt += "Значение узла: " + x.nodeValue + "<br>"; txt += "Тип узла: " + x.nodeType; document.getElementById("para").innerHTML = txt; </script>Проверьте, посмотрите‹/›
Референтное руководство по HTML DOM:node Свойство .nodeName
Референтное руководство по HTML DOM:node Свойство .nodeValue
Референтное руководство по HTML DOM:node Свойство .childNodes