XML DOM compareDocumentPosition() Methode
Definition und Verwendung
compareDocumentPosition()
Verwenden Sie die compareDocumentPosition()-Methode, um die Position von zwei Knoten im DOM-Hierarchie (Dokument) zu vergleichen.
Syntax
nodeObject.compareDocumentPosition(node)
Parameter
Parameter | Beschreibung |
---|---|
node | Erforderlich. Node-Objekt. Bestimmt den Knoten, der mit dem aktuellen Knoten verglichen wird. |
Technische Details
DOM-Version: | Core Level 3 Node Object |
---|---|
Rückgabewert: |
Zahlen, die die relative Position der beiden Knoten darstellen. Mögliche Rückgabewerte sind:
Hinweis:Der Rückgabewert kann auch eine Kombination von Werten sein. Zum Beispiel bedeutet der Rückgabewert 20, dass der angegebene Knoten im aktuellen Knoten (16) enthalten ist und der angegebene Knoten dem aktuellen Knoten (4) folgt. |
Beispiel
Das folgende Code lädt "books.xml" in xmlDoc und vergleicht die Positionen von zwei Knoten im DOM-Hierarchie (dem ersten und dritten <book>-Element):
var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { myFunction(this); } }; xhttp.open("GET", "books.xml", true); xhttp.send(); function myFunction(xml) { var xmlDoc = xml.responseXML; var x = xmlDoc.getElementsByTagName('book')[0]; var y = xmlDoc.getElementsByTagName('book')[2]; document.getElementById("demo").innerHTML = x.compareDocumentPosition(y); }
Die meisten Browser betrachten Leerzeichen oder neue Zeilen als Textknoten, nicht jedoch IE 9 und frühere Versionen. Daher geben die meisten Browser in diesem Beispiel 4 aus, während IE 9 und frühere Versionen 2 ausgeben.
Browser-Unterstützung
Browser-Unterstützung | Chrome | Edge | Firefox | Safari |
---|---|---|---|---|
Browser-Unterstützung | Chrome | Edge | Firefox | Safari |
Opera | Opera | Opera | Opera | Opera |
Unterstützt
Alle gängigen Browser unterstützen die Methode compareDocumentPosition().Anmerkung: