Node.nodeName

Свойство Node.nodeName только для чтения, возвращающие имя текущего узла в виде строки.

Возвращаемое значение для различных типов узлов:

Интерфейс значение nodeName
Attr Значение Attr.name
CDATASection "#cdata-section"
Comment "#comment"
Document "#document"
DocumentFragment "#document-fragment"
DocumentType Значение DocumentType.name
Element Значение Element.tagName
Entity имя сущности
EntityReference Имя сущности ссылки
Notation Название обозначения
ProcessingInstruction Значение ProcessingInstruction.target
Text "#text"

Синтаксис

var str = node.nodeName;

Пример

Учитывая следующую разметку:

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

и следующий скрипт:

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", потому что nodeName и tagName возвращают в верхнем регистре элементы HTML в DOM помеченном как HTML документ. Узнайте больше деталей о чувствительности регистра nodeName в различных браузерах.

Обратите внимание, что свойство tagName можно было бы использовать вместо него, поскольку nodeName имеет тоже значение что и tagName для элемента. Однако имейте в виду, что nodeName будет возвращать #text для текстово узла, в то время как tagName будет возвращать undefined.

Спецификации

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

Совместимость с браузерами

BCD tables only load in the browser