--- title: Node.compareDocumentPosition slug: Web/API/Node/compareDocumentPosition tags: - DOM - DOM Element Methods - Gecko - Gecko DOM Reference translation_of: Web/API/Node/compareDocumentPosition ---
そのノードと別のノードの位置を比較し、結果となるビットマスクを返します。
node.compareDocumentPosition( otherNode )
node
otherNode
呼び出し元の node
と {{domxref("Document")}} 内の otherNode
の関係を表すビットの整数値。複数の条件に適応する場合、1つ以上のビットがセットされることがあります。compareDocumentPosition()
を呼び出した node
と比較して、otherNode
が 文書のより前にあり、かつ node
を含んでいるならば、DOCUMENT_POSITION_CONTAINS
と DOCUMENT_POSITION_PRECEDING
のビットがセットされ、結果は0x0Aもしくは10進数の10になります。
戻り値は以下の値を持つビットマスクの何れかとなります。
名称 | 値 |
---|---|
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 |
var head = document.getElementsByTagName('head').item(0); if ( head.compareDocumentPosition(document.body) & Node.DOCUMENT_POSITION_FOLLOWING ) { console.log("head 要素は body 要素より前に記述されています。"); } else { console.log("head 要素は body 要素の前に配置しなくてはなりません。"); }
注記: compareDocumentPosition
の戻り値はビットマスクです。よって、有意な結果を得るには ビット演算子の "&
" を用いなくてはならない点に注意して下さい。
仕様書 | 策定状況 | コメント |
---|---|---|
DOM Level 3 | Recommendation | |
DOM Standard | Living standard |