JavaScript Reference

Quick Reference

The Element compareDocumentPosition() method compares two nodes, and returns an integer describing where they are positioned in the document.

Note

A node can be an HTML element (div, span, p, h2, etc.), or it can be a text node (plain text, white space, a teb, a linebreak). Whereas, when referring just to an element, only the HTML elements are relevant.

<p id="paragraph1">This is a paragraph</p>
<p id="paragraph2">This is another paragraph</p>

<!-- html element to place output -->
<p id="my_output"></p>
// variables
let p1 = document.getElementById('paragraph1').lastChild;
let p2 = document.getElementById('paragraph2').lastChild;
let my_position = p1.compareDocumentPosition(p2);

// output to the HTML element
document.getElementById('my_output').innerHTML = my_position;

Output

4
OutputMeaning
1The nodes do not belong to the same document
2The first node is positioned after the second
4The first node is positioned before the second
8The first node is positioned inside the second
16The second node is positioned inside the first
32The nodes are attributes on the same element

Syntax

node.compareDocumentPosition(node)

JavaScript Notes:

  • When using JavaScript, single or double quotation marks are acceptable and work identically to one another; choose whichever you prefer, and stay consistent
  • JavaScript is a case-sensitive language; firstName is NOT the same as firstname
  • Arrays count starting from zero NOT one; so item 1 is position [0], item 2 is position [1], and item 3 is position [2] … and so on
  • JavaScript variables must begin with a letter, $, or _
  • JavaScript variables are case sensitive (x is not the same as X)

We’d like to acknowledge that we learned a great deal of our coding from W3Schools and TutorialsPoint, borrowing heavily from their teaching process and excellent code examples. We highly recommend both sites to deepen your experience, and further your coding journey. We’re just hitting the basics here at 1SMARTchicken.