Node.compareDocumentPosition()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

La méthode Node.compareDocumentPosition() compare la position du noeud courant par rapport à un autre noeud dans tout autre document.

La valeur retournée est un masque de bits avec les valeurs suivantes :

Nom Valeur
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

Syntaxe

js
node.compareDocumentPosition(otherNode);

Exemple

js
var head = document.getElementsByTagName("head").item(0);

if (
  head.compareDocumentPosition(document.body) & Node.DOCUMENT_POSITION_FOLLOWING
) {
  console.log("well-formed document");
} else {
  console.log("<head> is not before <body>");
}

Note : Parce que le résultat renvoyé par compareDocumentPosition est un masque de bits, des opérateurs binaires doivent être utilisés pour des résultats significatifs.

Note : La première instruction utilise l' item(0) de la méthode NodeList , qui est l'équivalent de getElementsByTagName('head')[0].

Spécifications

Specification
DOM Standard
# ref-for-dom-node-comparedocumentposition①

Compatibilité des navigateurs

BCD tables only load in the browser

Voir aussi