HTML DOM Element nodeType 属性
定义和用法
nodeType
属性以数字形式返回指定节点的节点类型。
- 如果节点是元素节点,则 nodeType 属性将返回
1
。 - 如果节点是属性节点,则 nodeType 属性将返回
2
。 - 如果节点是文本节点,则 nodeType 属性将返回
3
。 - 如果节点是注释节点,则 nodeType 属性将返回
8
。
该属性是只读的。
另请参阅:
实例
例子 1
获取 body 元素的节点类型:
var x = document.getElementById("myP").nodeType;
例子 2
返回 <body> 元素的节点类型:
document.body.nodeType;
例子 3
显示所有元素的节点类型:
const nodes = document.body.childNodes; let text = ""; for (let i = 0; i < nodes.length; i++) { text += nodes[i].nodeType + "<br>"; }
例子 4
获取 "myDIV" 的第一个子节点的节点名称、值和类型:
const x = document.getElementById("myDIV").firstChild; let text = ""; text += "Name: " + x.nodeName + "<br>"; text += "Value: " + x.nodeValue + "<br>"; text += "Type: " + x.nodeType;
语法
node.nodeType
返回值
类型 | 描述 |
---|---|
数值 | 节点的节点类型。请见下表。 |
节点类型
HTML 或 XML 文档的文档、元素、属性以及其他节点拥有不同的节点类型。
有 12 种不同的节点类型,它们可能有各种节点类型的子节点:
类型 | 描述 | 子节点 | |
---|---|---|---|
1 | Element | 表示元素 |
|
2 | Attr | 表示属性 |
|
3 | Text | 表示元素或属性中的文本内容 | 无。 |
4 | CDATASection | 表示文档中的 CDATA 部分 (不会被解析器解析的文本) |
无。 |
5 | EntityReference | 表示实体引用 |
|
6 | Entity | 表示实体 |
|
7 | ProcessingInstruction | 表示处理指令 | 无。 |
8 | Comment | 表示注释 | 无。 |
9 | Document | 表示整个文档(DOM 树的根节点) |
|
10 | DocumentType | 向为文档定义的实体提供接口 | 无。 |
11 | DocumentFragment | 表示“轻量级”的 Document 对象,它可保存文档的片段。 |
|
12 | Notation | 表示在 DTD 中声明的符号 | 无。 |
节点类型 - 返回值
每种节点类型的 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 | doctype 名称 | 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 |
浏览器支持
element.nodeType
是 DOM Level 1 (1998) 特性。
所有浏览器都完全支持它:
Chrome | IE | Edge | Firefox | Safari | Opera |
---|---|---|---|---|---|
Chrome | IE | Edge | Firefox | Safari | Opera |
支持 | 9-11 | 支持 | 支持 | 支持 | 支持 |