JavaScript/DOM/Node/nodeType
Aus SELFHTML-Wiki
< JavaScript | DOM | Node
Die Eigenschaft Node.nodeType speichert den Typ eines Knotens in Form einer Nummer.
Syntax
const typ = node.nodeType;
-
typ
: Typ des Knotens; Das W3-Konsortium hat dazu folgende Zuordnungen festgelegt – einige davon sind XML-spezifisch. Die Zahlenwerte für den jeweiligen Typ finden sich in Eigenschaften des Node-Objekts und sind ebenfalls aufgeführt.
Zahlenwert | Bedeutung | Node-Eigenschaft |
---|---|---|
1 | Element | Node.ELEMENT_NODE
|
3 | Text | Node.TEXT_NODE
|
4 | CDATA-Abschnitt | Node.CDATA_SECTION_NODE
|
7 | Verarbeitungsanweisung | Node.PROCESSING_INSTRUCTION_NODE
|
8 | Kommentar | Node.COMMENT_NODE
|
9 | Dokument | Node.DOCUMENT_NODE
|
10 | Dokumenttyp | Node.DOCUMENT_TYPE_NODE
|
11 | Dokumentfragment | Node.DOCMENT_FRAGMENT_NODE
|
Obsolete Node-Typen | ||
2 | Attribut | Node.ATTRIBUTE_NODE
|
5 | Entitätsreferenz | Node.ATTRIBUTE_NODE
|
6 | Entität | Node.ATTRIBUTE_NODE
|
12 | Notation | Node.DOCMENT_NOTATION_NODE
|
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 nodeType und nodeName, sowie eventuelle childNodes ermittelt und im unteren div ausgegeben.
Beachte, dass die Attributknoten (Klassen, ids und Attribute des img-Elements) seit DOM4 nicht mehr als Kindknoten angesehen und deshalb hier nicht berücksichtigt werden.
Weblinks
- W3C: nodeType
- MDN: Node.nodeType