History
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Please take two minutes to fill out our short survey.
History
インターフェイスで、ブラウザーのセッション履歴、つまり現在のページが読み込まれたタブまたはフレームで訪問したページを操作することができます。
history
のインスタンスは 1 つしかなく(シングルトンです)、グローバルオブジェクト history
を通してアクセスできます。
インスタンスプロパティ
History
インターフェイスは何もプロパティを継承していません。
length
読取専用-
現在読み込まれているページを含むセッション履歴の要素数を表す
Integer
を返します。たとえば、新しいタブで読み込まれたページのこのプロパティは1
を返します。 scrollRestoration
-
ウェブアプリケーションが履歴の操作で既定のスクロール位置の復元を明示的に設定できるようにします。このプロパティは
auto
またはmanual
を指定することができます。 state
読取専用-
履歴スタックの最上位にある状態を表す
any
の値を返します。これはpopstate
イベントを待たずに状態を確認する方法です。
インスタンスメソッド
History
インターフェイスは何もメソッドを継承していません。
back()
-
これは非同期メソッドであり、ユーザーがブラウザーの戻るボタンをクリックしたときと同じく、セッション履歴の一つ前のページへ移動します。
history.go(-1)
と同等です。このメソッドを呼び出して、セッション履歴の最初のページを超えて戻っても何の効果もなく、例外が発生することもありません。
forward()
-
これは非同期メソッドであり、ユーザーがブラウザーの次へボタンをクリックしたときと同じく、セッション履歴の一つ次のページへ移動します。これは
history.go(1)
と同等です。このメソッドを呼び出して、セッション履歴の直近のページを超えて進んでも何の効果もなく、例外が発生することもありません。
go()
-
セッション履歴上で、現在のページからの相対位置で識別されるページを非同期に読み出します。たとえば、
-1
は前のページで1
は次のページです。範囲外の値を指定した場合 (例えば、セッション履歴に以前訪問したページがないときに-1
を指定した場合)、このメソッドは暗黙に何もしません。go()
を引数なし、または0
の値で呼び出すと、現在のページを再読み込みします。 pushState()
-
指定されたデータを指定されたタイトル(および、指定されていれば URL)でセッション履歴に追加します。このデータは DOM においては透過的でないものとして扱われます。シリアライズ可能な JavaScript を指定することができます。詳しくは、履歴 API での作業を参照してください。
replaceState()
-
履歴スタックの最新の項目が、指定したデータ、タイトル、指定されていれば URL になるよう更新します。データは DOM では透過的でないものとして扱われます。シリアライズ可能な JavaScript を指定することができます。なお、 Safari 以外のすべてのブラウザーが今のところ title 引数を無視することに注意してください。詳しくは、 履歴 API での作業を参照してください。
仕様書
Specification |
---|
HTML # the-history-interface |
ブラウザーの互換性
関連情報
history
グローバルオブジェクト