--- title: Node.nodeName slug: Web/API/Node/nodeName translation_of: Web/API/Node/nodeName ---
返回当前节点的节点名称
var str = node.nodeName;
str 是一个存储了当前节点的节点名称的字符串.nodeName 是一个只读属性.下表列出了所有类型的节点的nodeName属性的值.
| 接口 | nodeName属性值 |
|---|---|
| Attr | 等同于 Attr.name 属性的值 |
| CDATASection | "#cdata-section" |
| Comment | "#comment" |
| Document | "#document" |
| DocumentFragment | "#document-fragment" |
| DocumentType |
等同于 |
| Element |
等同于 |
| Entity | 实体名称 |
| EntityReference | 实体引用名称 |
| Notation | Notation名称 |
| ProcessingInstruction |
等同于 |
| text | "#text" |
假设已经存在下面的HTML:
<div id="d1">hello world</div> <input type="text" id="t"/>
以及下面的JavaScript:
var div1 = document.getElementById("d1");
var text_field = document.getElementById("t");
text_field.value = div1.nodeName;
在XHTML(以及属于XML类型的文档)中,变量text_field包含的值会是小写的"div".还在HTML中,变量text_field包含的值会是大写的"DIV",nodeName和tagName属性都有这种表现.查看details on nodeName case sensitivity in different browsers一文深入了解.
如果是元素节点,nodeName属性和tagName属性返回相同的值,但如果是文本节点,nodeName属性会返回"#text",而tagName属性会返回undefined.