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) 特性。

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

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
支持 9-11 支持 支持 支持 支持