JavaScript/DOM/Node/nodeName
Aus SELFHTML-Wiki
< JavaScript | DOM | Node
Die Eigenschaft Node.nodeName speichert den Namen eines Knotens.
Syntax
var str = node.nodeName;
Node-Inspektor
ansehen …
document.body.addEventListener('click', function (event) {
const clickedElement = event.target;
const nodeType = clickedElement.nodeType;
const nodeName = clickedElement.nodeName;
const childNodes = clickedElement.childNodes;
// Create a readable child nodes list
const childNodesInfo = Array.from(childNodes)
.map(node =>
`Type: ${node.nodeType}, Name: ${node.nodeName}, Content: "${node.textContent.trim()}"`
)
.join('\n');
// Update the output element
const output = document.querySelector('#output pre');
output.textContent =
`Node Type: ${nodeType}\nNode Name: ${nodeName}\nChild Nodes:\n${childNodesInfo}`;
});
Die Webseite enthält mehrere Elemente. Bei einem Klick auf ein Element werden nodeName und nodeType, sowie eventuelle childNodes ermittelt und im unteren div ausgegeben.
Elementknoten haben Namen, Textknoten jedoch nicht. Beim Versuch, den Namen eines Textknotens zu ermitteln, wird der Wert #text
gespeichert.
Beachten Sie: Diese Eigenschaft hat nichts mit dem name Attribut zu tun! Für Element-Knoten hat sie denselben Inhalt wie die tagName Eigenschaft.
Weblinks
- W3C: nodeName
- MDN: Node.nodeName