Metode XML DOM compareDocumentPosition()
Definisi dan penggunaan
compareDocumentPosition()
Bandingkan kedudukan kedua buah nod dalam struktur DOM (dokumen).
Sintaksis
nodeObject.compareDocumentPosition(node)
Parameter
Parameter | Deskripsi |
---|---|
node | Diperlukan. Objek Node. Menentukan node yang akan dibandingkan dengan node saat ini. |
Detil teknis
Versi DOM: | Core Level 3 Node Object |
---|---|
Nilai kembalian: |
Angka, yang menunjukkan posisi relatif kedua node. Nilai kembalian yang mungkin adalah:
Perhatian:Nilai kembalian juga dapat berupa kombinasi nilai. Misalnya, nilai kembalian 20 menunjukkan bahwa node yang ditentukan disertakan dalam node saat ini (16) dan node yang ditentukan mengikuti node saat ini (4). |
Contoh
Kode di bawah ini akan mengambil "books.xml" ke xmlDoc dan membandingkan posisi kedua node (elemen <book> pertama dan ketiga) dalam struktur 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); }
Banyak pelayar akan menganggap spasi atau baris baru sebagai node teks, tetapi IE 9 dan versi sebelumnya tidak. Oleh itu, di contoh di atas, sebagian besar pelayar akan menampilkan 4, sementara IE 9 dan versi sebelumnya akan menampilkan 2.
浏览器支持
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
支持 | 支持 | 支持 | 支持 | 支持 |
所有主流浏览器都支持 compareDocumentPosition() 方法。
注释:Internet Explorer 9 及更早版本不支持此方法。