
- HTML Home
- HTML Roadmap
- HTML Introduction
- HTML History & Evolution
- HTML Editors
- HTML Basic Tags
- HTML Elements
- HTML Attributes
- HTML Headings
- HTML Paragraphs
- HTML Fonts
- HTML Blocks
- HTML Style Sheet
- HTML Formatting
- HTML Quotations
- HTML - Comments
- HTML - Colors
- HTML - Images
- HTML - Image Map
- HTML - Frames
- HTML - Iframes
- HTML - Phrase Elements
- HTML - Code Elements
- HTML - Meta Tags
- HTML - Classes
- HTML - IDs
- HTML - Backgrounds
- HTML Tables
- HTML - Tables
- HTML - Table Headers & Captions
- HTML - Table Styling
- HTML - Table Colgroup
- HTML - Nested Tables
- HTML Lists
- HTML - Lists
- HTML - Unordered Lists
- HTML - Ordered Lists
- HTML - Definition Lists
- HTML Links
- HTML - Text Links
- HTML - Image Links
- HTML - Email Links
- HTML Color Names & Values
- HTML - Color Names
- HTML - RGB & RGBA Colors
- HTML - HEX Colors
- HTML - HSL & HSLA Colors
- HTML - HSL Color Picker
- HTML Forms
- HTML - Forms
- HTML - Form Attributes
- HTML - Form Control
- HTML - Input Attributes
- HTML Media
- HTML - Video Element
- HTML - Audio Element
- HTML - Embed Multimedia
- HTML Header
- HTML - Head Element
- HTML - Adding Favicon
- HTML - Javascript
- HTML Layouts
- HTML - Layouts
- HTML - Layout Elements
- HTML - Layout using CSS
- HTML - Responsiveness
- HTML - Symbols
- HTML - Emojis
- HTML - Style Guide
- HTML Graphics
- HTML - SVG
- HTML - Canvas
- HTML APIs
- HTML - Geolocation API
- HTML - Drag & Drop API
- HTML - Web Workers API
- HTML - WebSocket
- HTML - Web Storage
- HTML - Server Sent Events
- HTML Miscellaneous
- HTML - Document Object Model (DOM)
- HTML - MathML
- HTML - Microdata
- HTML - IndexedDB
- HTML - Web Messaging
- HTML - Web CORS
- HTML - Web RTC
- HTML Demo
- HTML - Audio Player
- HTML - Video Player
- HTML - Web slide Desk
- HTML Tools
- HTML - Velocity Draw
- HTML - QR Code
- HTML - Modernizer
- HTML - Validation
- HTML - Color Picker
- HTML References
- HTML - Cheat Sheet
- HTML - Tags Reference
- HTML - Attributes Reference
- HTML - Events Reference
- HTML - Fonts Reference
- HTML - ASCII Codes
- ASCII Table Lookup
- HTML - Color Names
- HTML - Character Entities
- MIME Media Types
- HTML - URL Encoding
- Language ISO Codes
- HTML - Character Encodings
- HTML - Deprecated Tags
- HTML Resources
- HTML - Quick Guide
- HTML - Useful Resources
- HTML - Color Code Builder
- HTML - Online Editor
HTML - DOM Element compareDocumentPosition() Method
The HTML DOM Element compareDocumentPosition() method is used to understand the document structure by comparing the positions of two DOM elements (nodes) and returns a bitmask.
A bitmask is a numeric value representing the position of the first element relative to the second element.
Syntax
Following is the syntax of the HTML DOM Element compareDocumentPosition() method −
node.compareDocumentPosition(otherNode);
Parameters
This method accepts a single parameter as listed below −
Method | Description |
---|---|
otherNode | The other DOM node to compare against the original node. |
Return Value
A bitmask indicating the positional relationship between the two DOM nodes. It's values and their meanings are as follows:
Relation | Values & Description |
---|---|
Different Docs |
1 Nodes belong to different documents |
After |
2 First node comes after the second |
Before |
4 First node comes before the second |
Inside (1st) |
8 First node is inside the second |
Inside (2nd) |
16 Second node is inside the first |
Same Attributes |
32 Nodes are attributes on the same element |
Example 1: Comparing Elements in a Document
The following program demonstrates the usage of the HTML DOM Element compareDocumentPosition() by comparing two elements within the same document −
HTML DOM Element compareDocumentPosition() HTML DOM Element compareDocumentPosition() method
Element 1Element 2
The above program displays "Element 1 follows Element 2.", which means both the element having same document position.
Example 2: Comparing Element with it's Descendant
Here is another example of the HTML DOM Element compareDocumentPosition(). We compare the parent element with its child (descendant) element using this method −
HTML DOM Element compareDocumentPosition() Method
Compare Element with Descendant Example
Parent ElementDescendant Element
When the button clicks, it displays "Descendant contained by Parent Element" which means the the parent contains the specified element.
Example 3: Comparing Two Disconnected Elements
This example shows how to handle the case when two elements are compared but do not have any meaningful document relationship −
HTML DOM Element compareDocumentPosition() HTML DOM Element compareDocumentPosition() Method
Supported Browsers
Method | ![]() |
![]() |
![]() |
![]() |
![]() |
---|---|---|---|---|---|
compareDocumentPosition() | Yes | Yes | Yes | Yes | Yes |