XML DOM compareDocumentPosition() metoda

Paglilinaw at paggamit

compareDocumentPosition() Ipagkakumpara ang posisyon ng dalawang node sa DOM hierarchy (dokumentong).

Mga Tagapagpahayag

nodeObject.compareDocumentPosition(node)

Parametro

Parametro Paglalarawan
node Mandahil. Ang Node object. Tinutukoy ang node na dapat maghahalintulad sa kasalukuyang node.

Detalye ng Tekniko

DOM Version: Core Level 3 Node Object
Halaga ng ibabalik:

Ang numero ay naglalaro ng posisyon ng dalawang node sa relasyon. Ang posibleng halaga ng halaga ay:

  • 1 - Walang relasyon, ang dalawang node ay hindi nasa parehong dokumento.
  • 2 - Ang tinukoy na node ay nasa harap ng kasalukuyang node.
  • 4 - Ang tinukoy na node ay sumusunod sa kasalukuyang node.
  • 8 - Ang tinukoy na node ay kasama ang kasalukuyang node.
  • 16 - Ang tinukoy na node ay kasama sa kasalukuyang node.
  • 32 - Walang magkakasamang container node ang tinukoy na node at ang kasalukuyang node, o ang dalawang node ay magkakasama sa isang node na may iba't ibang attribute.

Pansin:Ang halimbawa ng ibang kumpolasyon ng halaga ay maaaring ayon sa. Ang halaga ng 20 ay nangangahulugan na ang tinukoy na node ay kasama sa kasalukuyang node (16) at ang tinukoy na node ay sumusunod sa kasalukuyang node (4).

Sample

Ang mga sumusunod na code ay maglulagay ng "books.xml" sa xmlDoc at maghahalintulad sa posisyon ng dalawang node (ang unang at ikatlong <book> element) sa DOM hierarchy:

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

Subukan nang personal

Ang karamihan na mga brauser ay magtuturing ng walang laman o bagong linya bilang text node, ang IE 9 at mas maaga ay hindi. Kaya, sa itinatanging halimbawa, ang karamihan na mga brauser ay maglalaro ng 4, habang ang IE 9 at mas maaga ay maglalaro ng 2.

浏览器支持

Chrome Edge Firefox Safari Opera
Chrome Edge Firefox Safari Opera
支持 支持 支持 支持 支持

所有主流浏览器都支持 compareDocumentPosition() 方法。

注释:Internet Explorer 9 及更早版本不支持此方法。