HTML DOM метод compareDocumentPosition()
Пример
Узнайте, где один абзац расположен по сравнению с другим абзацем:
var p1 = document.getElementById("p1");
var p2 = document.getElementById("p2");
var x = p1.compareDocumentPosition(p2);
Определение и использование
Метод compareDocumentPosition() сравнивает два узла и возвращает целое число, описывающее их положение в документе.
Посмотрите на пример выше. Возможные возвращаемые значения будут указывать:
1: Нет связи, два узла не принадлежат одному и тому же документу.
2: первый узел (p1) расположен после второго узла (p2).
4: первый узел (p1) расположен перед вторым узлом (p2).
8: первый узел (p1) расположен внутри второго узла (p2).
16: Второй узел (p2) расположен внутри первого узла (p1).
32: Нет связи, или два узла являются двумя атрибутами одного и того же элемента.
Примечание . Возвращаемое значение также может быть комбинацией значений. То есть возвращаемое значение 20 означает, что p2 находится внутри p1 (16) И p1 расположен перед p2 (4).
Поддержка браузера
Цифры в таблице указывают на первую версию браузера, полностью поддерживающую метод.
Method | |||||
---|---|---|---|---|---|
compareDocumentPosition() | Yes | 9.0 | Yes | Yes | Yes |
Синтаксис
node.compareDocumentPosition(node)
Значения параметров
Parameter | Type | Description |
---|---|---|
node | Node object | Required. Specifies the node to compare with the current node |
Технические детали
Возвращаемое значение: | Число, представляющее расположение двух узлов по сравнению друг с другом.
Возможные возвращаемые значения: 1 ( нет связи, два узла не принадлежат одному и тому же документу ) 2 ( первый узел (p1) расположен после второго узла (p2) ) 4 ( первый узел (p1) расположен перед вторым узлом (p2) ) 8 ( Первый узел (p1) расположен внутри второго узла (p2) ) 16 ( Второй узел (p2) расположен внутри первого узла (p1) ) 32 ( нет связи, или два узла являются двумя атрибутами одного и того же элемента ) |
---|---|
DOM-версия | Базовый объект узла уровня 1 |