Node.compareDocumentPosition() method reports the position of the given node relative to another node in any document — not just the given node’s document.

返回值为 bitmask of the following values:

名称
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

句法

compareMask = node.compareDocumentPosition(otherNode)
					

参数

otherNode
The other 节点 with which to compare the first node ’s document position.

返回值

An integer value whose bits represent the otherNode 's relationship to the calling node .

More than one bit is set if multiple scenarios apply. For example, if otherNode is located earlier in the document and 包含 node on which compareDocumentPosition() was called, then both the DOCUMENT_POSITION_CONTAINS and DOCUMENT_POSITION_PRECEDING bits would be set, producing a value of 10 ( 0x0A ).

范例

const head = document.head;
const body = document.body;
if (head.compareDocumentPosition(body) & Node.DOCUMENT_POSITION_FOLLOWING) {
  console.log('Well-formed document');
} else {
  console.error('<head> is not before <body>');
}
					

注意: Because the result returned by compareDocumentPosition() is a bitmask, the bitwise AND operator must be used for meaningful results.

规范

规范 状态 注释
DOM
The definition of 'Node.compareDocumentPosition()' in that specification.
实时标准
DOM (文档对象模型) 3 级核心规范
The definition of 'Node.compareDocumentPosition()' in that specification.
过时 初始定义

浏览器兼容性

The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request. 更新 GitHub 上的兼容性数据
桌面 移动
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet
compareDocumentPosition Chrome Yes Edge 12 Firefox 9 IE 9
9
Only supports 包含 for elements
Opera Yes Safari Yes WebView Android Yes Chrome Android Yes Firefox Android 9 Opera Android Yes Safari iOS Yes Samsung Internet Android Yes

图例

完整支持

完整支持

见实现注意事项。

另请参阅

元数据

  • 最后修改: