Свойство 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 |
Значение |
Text |
"#text" |
Синтаксис
var str = node.nodeName;
Пример
Учитывая следующую разметку:
<div id="d1">hello world</div> <input type="text" id="t"/>
и следующий скрипт:
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
.