Join MDN and developers like you at Mozilla's View Source conference, November 2-4 in Portland, Oregon. Learn more at


This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for the proper prefixes to use in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the spec changes.

The Selection.containsNode() method indicates if the node is part of the selection.




The node that is being looked for whether it is part of the selection
When true, containsNode() returns true when a part of the node is part of the selection.
When false, containsNode() only returns true when the entire node is part of the selection.


 /* Check to see if anything inside the body element is selected */
 alert(window.getSelection().containsNode(document.body, true));


Specification Status Comment
HTML Editing APIs
The definition of 'Selection.containsNode' in that specification.
Editor's Draft Initial definition
Selection API
The definition of 'Selection.containsNode()' in that specification.
Working Draft Current

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support ? 4.0 (2)[1] ? ? ?
Feature Android Firefox Mobile (Gecko) Firefox OS IE Phone Opera Mobile Safari Mobile
Basic support ? 4.0 (2)[1] 1.0 ? ? ?

[1] Before Firefox 35, the method didn't throw if aNode was null.

See also


Document Tags and Contributors

Contributors to this page: BenjamP, fscholz, teoli, MHasan, kscarfone, Kartik_Chadha, Sheppy, Federico, DR, Rev, Mw22
Last updated by: BenjamP,