--- title: Node.compareDocumentPosition slug: Web/API/Node/compareDocumentPosition translation_of: Web/API/Node/compareDocumentPosition ---
{{ ApiRef() }}
Сравнивает позицию текущего узла и другого узла в любом другом документе.
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 |
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
, является битовой маской, побитовый оператор и должен использоваться для осмысленных значений.
Спецификация | Статус | Комментарий |
DOM Level 3 | Рекомендация | |
DOM Standard | Живой стандарт |
{{ languages( {"ru-ru": "ru-ru/DOM/Node.compareDocumentPosition" } ) }}