HTML DOM compareDocumentPosition()メソッド
例
ある段落が別の段落と比較してどこに配置されているかを調べます。
var p1 = document.getElementById("p1");
var p2 = document.getElementById("p2");
var x = p1.compareDocumentPosition(p2);
定義と使用法
compareDocumentPosition()メソッドは、2つのノードを比較し、それらがドキュメント内のどこに配置されているかを示す整数を返します。
上記の例を見てください。可能な戻り値は次のように指定します。
1:関係なし、2つのノードは同じドキュメントに属していません。
2:最初のノード(p1)は、2番目のノード(p2)の後に配置されます。
4:最初のノード(p1)は、2番目のノード(p2)の前に配置されます。
8:最初のノード(p1)は2番目のノード(p2)の内側に配置されます。
16:2番目のノード(p2)は、最初のノード(p1)の内側に配置されます。
32:関係がないか、2つのノードが同じ要素の2つの属性です。
注:戻り値は、値の組み合わせにすることもできます。つまり、戻り値20は、p2がp1(16)の内側にあり、p1がp2(4)の前に配置されていることを意味します。
ブラウザのサポート
表の数字は、このメソッドを完全にサポートする最初のブラウザバージョンを示しています。
Method | |||||
---|---|---|---|---|---|
compareDocumentPosition() | Yes | 9.0 | Yes | Yes | Yes |
構文
node.compareDocumentPosition(node)
パラメータ値
Parameter | Type | Description |
---|---|---|
node | Node object | Required. Specifies the node to compare with the current node |
技術的な詳細
戻り値: | 2つのノードが互いに比較して配置されている場所を表す数値。
可能な戻り値: 1(関係なし、2つのノードは同じドキュメントに属していません) 2(最初のノード(p1)は2番目のノード(p2)の後に配置されます) 4(最初のノード(p1)は2番目のノード(p2)の前に配置されます) 8(最初のノード(p1)は2番目のノード(p2)の内側に配置されます) 16(2番目のノード(p2)は最初のノード(p1)の内側に配置されます) 32(関係がない、または2つのノードが同じ要素の2つの属性である) |
---|---|
DOMバージョン | コアレベル1ノードオブジェクト |