XML DOM compareDocumentPosition() μέθοδος

Ορισμός και χρήση

compareDocumentPosition() Η μέθοδος συγκρίνει τη θέση του τρέχοντος κόμβου στο έγγραφο με τον καθορισμένο κόμβο με βάση τη σειρά του εγγράφου.

Γραμματική

elementNode.compareDocumentPostition(node)
Παράμετροι Περιγραφή
node Απαιτείται. Ορίζει το κόμβο που θα συγκριθεί με τον τρέχοντα κόμβο.

Παράδειγμα

Η παρακάτω κώδικας θα φορτώσει το "books.xml" στο xmlDoc και θα συγκρίνει τη θέση δύο κόμβων στην DOM δομή (το πρώτο και το τρίτο στοιχείο <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);
{}

亲自试一试

大多数浏览器会将空白或新行视为文本节点,IE 9 及更早版本不会。因此,在上面的例子中,大多数浏览器将输出 4,而 IE 9 及更早版本将输出 2。

如需了解有关浏览器之间差异的更多信息,请访问 XML DOM 教程中的 DOM 浏览器章节。