> JavaScript中文手册 > element.compareDocumentPosition()

实例

比较当前字段与指定字段的文档位置:

var p1=document.getElementById("p1");
var p2=document.getElementById("p2");
p1.compareDocumentPosition(p2);

输出结果:

4
运行一下 »

定义和用法

compareDocumentPosition() 方法按照文档顺序,比较当前节点与指定节点的文档位置。

查看以上实例,返回值可能是:

1:没有关系,这两个节点不属于同一个文档。

2: 第一节点(P1)位于第二个节点后(P2)。

4:第一节点(P1)定位在第二节点(P2)前。

8: 第一节点(P1)位于第二节点内(P2)。

16: 第二节点(P2)位于第一节点内(P1)。

32:没有关系的,或是两个节点在同一元素的两个属性。

注意: 返回值可以是一个组合的值。即返回20意味着在P1 P2和P1(16) 定位在P2(4)前。

浏览器支持

<i>element</i>.compareDocumentPosition()<i>element</i>.compareDocumentPosition()<i>element</i>.compareDocumentPosition()<i>element</i>.compareDocumentPosition()<i>element</i>.compareDocumentPosition()

所有主要浏览器都支持 compareDocumentPosition() 方法

注意: Internet Explorer 8 及更早IE版本不支持该方法。

语法

node.compareDocumentPosition(node)

参数

参数 类型 描述
node Node object 必须。你想比较的指定节点。

返回值

类型 描述
Number 比较当前节点与指定节点的文档位置

可能的返回值:

查看以上实例,返回值可能是:

1:没有关系,这两个节点不属于同一个文档。

2: 第一节点(P1)位于第二个节点后(P2)。

4:第一节点(P1)定位在第二节点(P2)前。

8: 第一节点(P1)位于第二节点内(P2)。

16: 第二节点(P2)位于第一节点内(P1)。

32:没有关系的,或是两个节点在同一元素的两个属性。

技术细节

DOM 版本 Core Level 1 Node Object