Node.nodeName

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

概述

返回当前节点的节点名称

附注

下表列出了所有类型的节点的nodeName属性的值。

接口 nodeName 属性值
Attr 等同于 Attr.name 属性的值
CDATASection "#cdata-section"
Comment "#comment"
Document "#document"
DocumentFragment "#document-fragment"
DocumentType 等同于 DocumentType.name 属性的值
Element 等同于 Element.tagName 属性的值
Entity 实体名称
EntityReference 实体引用名称
Notation Notation 名称
ProcessingInstruction 等同于 ProcessingInstruction.target 属性的值
text "#text"

示例

假设已经存在下面的 HTML:

html
<div id="d1">hello world</div>
<input type="text" id="t" />

以及下面的 JavaScript:

js
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", nodeNametagName 属性都有这种表现。查看details on nodeName case sensitivity in different browsers一文深入了解。

如果是元素节点,nodeName 属性和 tagName 属性返回相同的值,但如果是文本节点,nodeName 属性会返回 "#text",而 tagName 属性会返回 undefined

规范

Specification
DOM Standard
# ref-for-dom-node-nodename①