Node.compareDocumentPosition

Аннотация

Сравнивает позицию текущего узла и другого узла в любом другом документе.

Синтаксис

node.compareDocumentPosition( otherNode )
  • node это узел, который сравнивается
  • otherNode это узел, с которым идёт сравнение.

Возвращаемое значение вычисляется как отношение, которое имеется между otherNode и node.

Примечание

Возвращаемое значение - это битовая маска со следующими значениями:

Имя Значение
DOCUMENT_POSITION_DISCONNECTED 1
DOCUMENT_POSITION_PRECEDING 2
DOCUMENT_POSITION_FOLLOWING 4
DOCUMENT_POSITION_CONTAINS 8
DOCUMENT_POSITION_CONTAINED_BY 16
DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC 32

Пример

js
var head = document.getElementsByTagName("head").item(0);
if (
  head.compareDocumentPosition(document.body) & Node.DOCUMENT_POSITION_FOLLOWING
) {
  console.log("well-formed document");
} else {
  console.log("<head> is not before <body>");
}

Примечание: Из-за того, что результат, возвращаемый compareDocumentPosition, является битовой маской, побитовый оператор и (en-US) должен использоваться для осмысленных значений.

Спецификации

Specification
DOM Standard
# ref-for-dom-node-comparedocumentposition①

Совместимость с браузерами

BCD tables only load in the browser

Смотрите также