Metodo compareDocumentPosition() dell'XML DOM
Definizione e uso
compareDocumentPosition()
Confronta la posizione di due nodi nel DOM (documento) dell'albero gerarchico.
Sintassi
nodeObject.compareDocumentPosition(node)
Parametro
Parametro | Descrizione |
---|---|
node | Obbligatorio. Oggetto Node. Specifica il nodo con cui confrontare il nodo corrente. |
Dettagli tecnici
Versione DOM: | Core Level 3 Node Object |
---|---|
Valore di ritorno: |
Numeri che rappresentano la posizione relativa dei due nodi. I valori possibili sono:
Attenzione:Il valore di ritorno può anche essere una combinazione di valori. Ad esempio, il valore di ritorno 20 indica che il nodo specificato è contenuto nel nodo corrente (16) e segue il nodo corrente (4). |
Esempio
Il codice seguente carica "books.xml" in xmlDoc e confronta la posizione di due nodi (il primo e il terzo elemento <book>) nella struttura DOM:
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); }
La maggior parte dei browser considera gli spazi bianchi o le nuove righe come nodi di testo, mentre Internet Explorer 9 e le versioni precedenti non lo fanno. Pertanto, nell'esempio sopra, la maggior parte dei browser restituirà 4, mentre Internet Explorer 9 e le versioni precedenti restituiranno 2.
Supporto dei browser
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
Supporto | Supporto | Supporto | Supporto | Supporto |
Tutti i browser principali supportano il metodo compareDocumentPosition().
Nota:Internet Explorer 9 e versioni precedenti non supportano questo metodo.