Metode XML DOM compareDocumentPosition()
Definisi dan penggunaan
compareDocumentPosition()
Membandingkan posisi kedua node di 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. Contohnya, 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 mengunggah "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); }
Sebagian besar peramban akan menganggap spasi atau baris baru sebagai node teks, tetapi IE 9 dan versi sebelumnya tidak. Oleh karena itu, di contoh di atas, sebagian besar peramban 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 及更早版本不支持此方法。