JavaScript/DOM/Node/nodeName

Aus SELFHTML-Wiki
< JavaScript‎ | DOM‎ | Node
Wechseln zu: Navigation, Suche

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