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.

DOMStaticRange インターフェイスは AbstractRange を拡張し、 DOM ツリー内で発生した変更を反映しない、 DOM 内のコンテンツの範囲を指定するメソッドを提供します。

このインターフェイスは AbstractRange と同じプロパティとメソッドの集合を提供します。

AbstractRangeStaticRangeウェブワーカーからは利用できません。

AbstractRange StaticRange

コンストラクター

StaticRange()

プロパティの既定値を指定したオブジェクトを指定して、新しい StaticRange オブジェクトを作成します。

インスタンスプロパティ

以下のプロパティは親インターフェイスである AbstractRange から継承しています。

StaticRange.collapsed 読取専用

論理値で、範囲が折りたたまれている場合は true となります。折りたたまれた範囲とは、開始位置と末尾位置が同じで、 0 文字の長さの範囲です。

endContainer 読取専用

endOffset プロパティで指定された範囲の末尾がある場所の Node オブジェクトです。

StaticRange.endOffset 読取専用

ノードの内容の先頭から、この範囲オブジェクトで表す範囲の先頭までのオフセットを文字数で表した整数値です。この値は endContainer ノードの長さよりも小さくなければなりません。

StaticRange.startContainer 読取専用

startOffset プロパティで指定された範囲の先頭がある場所の Node オブジェクトです。

StaticRange.startOffset 読取専用

ノードの内容の先頭から、範囲オブジェクトが参照する内容の先頭の文字までのオフセットを文字数で表した整数値です。この値は startContainer で示すノードの長さよりも小さくなければなりません。

使用上のメモ

DOM 範囲は文書内のコンテンツの範囲を指定します。あるノード(または要素)の内部で始まり、別のノード(または要素)の内部で終わる可能性があります。 Range とは異なり、 StaticRange はその時点で固定された範囲を表します。文書が変更されても、変更されずに同じ範囲を維持しようとします。DOM に何らかの変更が加えられた場合、 StaticRange で指定した範囲に格納する実際のデータは変更される可能性があります。これにより、ユーザーエージェントは、ウェブアプリケーションやウェブサイトがライブ更新される範囲を必要としない場合、不必要な多くの作業を避けることができます。

仕様書

Specification
DOM Standard
# interface-staticrange

ブラウザーの互換性

BCD tables only load in the browser

関連情報

  • ライブで更新される DOM 内のコンテンツ範囲: Range
  • AbstractRange: すべての範囲が派生する抽象インターフェイス