Método compareDocumentPosition() del XML DOM

Definición y uso

compareDocumentPosition() El método compara la posición del nodo actual en el orden del documento con el nodo especificado.

Sintaxis

elementNode.compareDocumentPostition(node)
Parámetros Descripción
node Obligatorio. Especifica el nodo con el que se debe comparar el nodo actual.

Ejemplo

El siguiente código carga "books.xml" en xmlDoc y compara la posición de dos nodos en la estructura DOM (el primer y tercer elemento <book>):

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);
}

Pruebe personalmente

La mayoría de los navegadores consideran los espacios en blanco o las nuevas líneas como nodos de texto, los navegadores IE 9 y anteriores no lo hacen. Por lo tanto, en el ejemplo anterior, la mayoría de los navegadores devolverán 4, mientras que los navegadores IE 9 y anteriores devolverán 2.

Para obtener más información sobre las diferencias entre navegadores, visite la sección DOM de navegadores en el tutorial de XML DOM.