HTML DOM Element compareDocumentPosition() 方法

定义和用法

compareDocumentPosition() 方法比较两个节点,并返回整数,描述它们在文档中的位置:

含义
1节点不属于同一个文档。
2第一个节点位于第二个节点之后。
4第一个节点位于第二个节点之前。
8第一个节点位于第二个节点内。
16第二个节点位于第一个节点内。
32节点是同一元素上的属性。

注释

返回值也可以是值的组合。

值 20 表示第二个节点位于第一个节点 (16) 内,且第一个节点位于第二个节点之前(4)。

实例

"p1" 与 "p2" 相比在哪里:

const p1 = document.getElementById("p1");
const p2 = document.getElementById("p2");
let position = p1.compareDocumentPosition(p2);

亲自试一试

语法

node.compareDocumentPosition(node)

参数

参数描述
Node必需。要与当前节点进行比较的节点。

返回值

类型描述
数字两个节点相互比较的位置。
含义
1节点不属于同一个文档。
2第一个节点位于第二个节点之后。
4第一个节点位于第二个节点之前。
8第一个节点位于第二个节点内。
16第二个节点位于第一个节点内。
32节点是同一元素上的属性。

浏览器支持

element.compareDocumentPosition() 是 DOM Level 1 (1998) 特性。

所有浏览器都完全支持它:

ChromeIEEdgeFirefoxSafariOpera
ChromeIEEdgeFirefoxSafariOpera
支持9-11支持支持支持支持