Метод compareDocumentPosition() XML DOM
Определение и использование
compareDocumentPosition()
Метод сравнивает позицию текущего узла в документе по порядку с указанным узлом.
Синтаксис
elementNode.compareDocumentPostition(node)
Параметры | Описание |
---|---|
node | Обязателен. Определяет узел, с которым нужно сравнивать текущий узел. |
Пример
Ниже приведен код, который загружает "books.xml" в xmlDoc и сравнивает положение двух узлов (первого и третьего элементов <book>) в иерархии 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); }
Большинство браузеров считают пробелы или новые строки текстовыми узлами, IE 9 и более ранние версии нет. Поэтому, в примере выше, большинство браузеров выведут 4, а IE 9 и более ранние версии выведут 2.
Для получения更多信息 о различиях между браузерами посетите раздел о браузерах в учебнике XML DOM.