StaticRange

Baseline Widely available

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

The DOM StaticRange interface extends AbstractRange to provide a method to specify a range of content in the DOM whose contents don't update to reflect changes which occur within the DOM tree.

This interface offers the same set of properties and methods as AbstractRange.

AbstractRange and StaticRange are not available from web workers.

AbstractRange StaticRange

Constructor

StaticRange()

Creates a new StaticRange object given options specifying the default values for its properties.

Instance properties

The properties below are inherited from its parent interface, AbstractRange.

StaticRange.collapsed Read only

Returns a Boolean value that is true if the range's start and end positions are the same, resulting in a range of length 0.

StaticRange.endContainer Read only

Returns the DOM Node which contains the ending point of the range. The offset into the node at which the end position is located is indicated by endOffset.

StaticRange.endOffset Read only

Returns an integer value indicating the offset into the node given by endContainer at which the last character of the range is found.

StaticRange.startContainer Read only

Returns the DOM Node which contains the starting point of the range (which is in turn identified by startOffset.

StaticRange.startOffset Read only

Returns an integer value indicating the offset into the node specified by startContainer at which the first character of the range is located.

Usage notes

A DOM range specifies a span of content in a document, potentially beginning inside one node (or element) and ending inside another one. Unlike a Range, a StaticRange represents a range which is fixed in time; it does not change to try to keep the same content within it as the document changes. If any changes are made to the DOM, the actual data contained within the range specified by a StaticRange may change. This lets the user agent avoid a lot of work that is unnecessary if the web app or site doesn't need a live-updating range.

Specifications

Specification
DOM Standard
# interface-staticrange

Browser compatibility

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
StaticRange
StaticRange() constructor
collapsed
endContainer
endOffset
startContainer
startOffset

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
See implementation notes.

See also

  • Live updating range of content within the DOM: Range
  • AbstractRange, the abstract interface from which all ranges are derived