History インターフェースはブラウザのセッションヒストリー、つまり現在のページが読み込まれたタブまたはフレームで訪問されたページを操作できます。

プロパティ

History インターフェースは何のプロパティも継承していません。

History.length 読取専用
現在読み込まれているページを含むセッションヒストリーの要素数を表す整数値を返します。たとえば、新しいタブで読み込まれたページのこのプロパティは 1 を返します。
History.current 読取専用 Gecko 26 で廃止
セッションヒストリーでアクティブな項目の URL を表す DOMString を返します。このプロパティはウェブコンテンツでは決して使用できず、どのブラウザでもサポートされていません。Location.href を代わりに使用してください。
History.next 読取専用 Gecko 26 で廃止
セッションヒストリ-の次の項目の URL を表す DOMString を返します。このプロパティはウェブコンテンツでは決して使用できず、どのブラウザでもサポートされていません。
History.previous 読取専用 Gecko 26 で廃止
セッションヒストリ-の前の項目の URL を表す DOMString を返します。このプロパティはウェブコンテンツでは決して使用できず、どのブラウザでもサポートされていません。
History.scrollRestoration 
ウェブアプリケーションがヒストリーナビゲーションでデフォルトのスクロールリストア動作を明示的に設定できるようにします。このプロパティは automanual を指定できます。
History.state 読取専用
ヒストリスタックの最上位にある状態を表す任意の値を返します。これは popstate イベントを待たずに状態を確認する方法です。

メソッド

History インターフェースは何のメソッドも継承していません。

History.back()
ユーザーがブラウザーの戻るボタンをクリックしたときの動作と同様に、セッションヒストリーの前のページに移動します。history.go(-1) と同等です。
このメソッドを呼び出して、セッションヒストリーの最初のページを超えて戻っても何の効果もなく、例外が発生することもありません。
History.forward()
ユーザーがブラウザーの次へボタンをクリックしたときの動作と同様に、セッションヒストリーの次のページに移動します。これは history.go(1) と同等です。
このメソッドを呼び出して、セッションヒストリーの直近のページを超えて進んでも何の効果もなく、例外が発生することもありません。
History.go()
現在のページからの相対的な位置で識別してセッションヒストリーからページをロードします。たとえば、 -1 は前のページで 1 は次のページです。境界を超える値 (たとえば、セッションヒストリーに以前訪れたページがないときに -1 を指定する) を指定した場合、このメソッドは何の効果も示しません。引数なしや 0 で go() を呼び出した場合、現在のページを再読み込みします。Internet Explorer はヒストリーリストの特定のページに移動する 文字列を指定することもできます
History.pushState()
与えられたデータを指定されたタイトルと URL があればそれをセッションヒストリースタックに渡します。データは DOM によって不透明として扱われます。JavaScript オブジェクトを指定できます。現在 Firefox は title パラメーターを無視することに注意してください。詳細は ブラウザの履歴を操作する を見てください。
History.replaceState()
ヒストリースタックの直近のエントリーを指定した data、title、(あれば) URL で更新します。データは DOM によって不透明として扱われます。JavaScript オブジェクトを指定できます。現在 Firefox は title パラメーターを無視することに注意してください。詳細は ブラウザの履歴を操作する を見てください。

仕様

仕様 ステータス コメント
HTML Living Standard
History の定義
現行の標準 scrollRestoration 属性の追加。
HTML5
History の定義
勧告 初期定義。
Custom Scroll Restoration - History-based API
History の定義
ドラフト scrollRestoration 属性の追加。

ブラウザー実装状況

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeEdge MobileAndroid 版 FirefoxAndroid 版 OperaiOS 版 SafariSamsung Internet
基本対応Chrome 完全対応 ありEdge 完全対応 ありFirefox 完全対応 ありIE 完全対応 ありOpera 完全対応 ありSafari 完全対応 ありWebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile 完全対応 ありFirefox Android 完全対応 ありOpera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?
backChrome 完全対応 ありEdge ? Firefox 完全対応 ありIE ? Opera ? Safari ? WebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android ? Safari iOS ? Samsung Internet Android ?
forwardChrome 完全対応 ありEdge ? Firefox 完全対応 ありIE ? Opera ? Safari ? WebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android ? Safari iOS ? Samsung Internet Android ?
goChrome 完全対応 ありEdge ? Firefox 完全対応 ありIE ? Opera ? Safari ? WebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android ? Safari iOS ? Samsung Internet Android ?
lengthChrome 完全対応 ありEdge ? Firefox 完全対応 ありIE ? Opera ? Safari ? WebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android ? Safari iOS ? Samsung Internet Android ?
pushStateChrome 完全対応 5Edge 完全対応 ありFirefox 完全対応 4
補足
完全対応 4
補足
補足 In Firefox 2 through 5, the passed object is serialized using JSON. Starting in Firefox 6, the object is serialized using the structured clone algorithm. This allows a wider variety of objects to be safely passed.
IE 完全対応 10Opera 完全対応 11.5Safari 完全対応 5WebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile 完全対応 ありFirefox Android 完全対応 ありOpera Android 完全対応 ありSafari iOS 完全対応 4.3Samsung Internet Android ?
replaceStateChrome 完全対応 5Edge 完全対応 ありFirefox 完全対応 4
補足
完全対応 4
補足
補足 In Firefox 2 through 5, the passed object is serialized using JSON. Starting in Firefox 6, the object is serialized using the structured clone algorithm. This allows a wider variety of objects to be safely passed.
IE 完全対応 10Opera 完全対応 11.5Safari 完全対応 5WebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile 完全対応 ありFirefox Android 完全対応 ありOpera Android 完全対応 ありSafari iOS 完全対応 4.3Samsung Internet Android ?
scrollRestorationChrome 完全対応 46Edge 未対応 なしFirefox 完全対応 46IE 未対応 なしOpera 完全対応 33Safari 完全対応 ありWebView Android 未対応 なしChrome Android 完全対応 46Edge Mobile 未対応 なしFirefox Android 完全対応 ありOpera Android 完全対応 ありSafari iOS 完全対応 ありSamsung Internet Android ?
stateChrome 完全対応 ありEdge ? Firefox 完全対応 ありIE ? Opera ? Safari ? WebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile ? Firefox Android 完全対応 ありOpera Android ? Safari iOS ? Samsung Internet Android ?

凡例

完全対応  
完全対応
未対応  
未対応
実装状況不明  
実装状況不明
実装ノートを参照してください。
実装ノートを参照してください。

関連項目

  • Window.history プロパティは現在のセッションのヒストリーを返します。

ドキュメントのタグと貢献者

このページの貢献者: YuichiNukiyama
最終更新者: YuichiNukiyama,