History
        
        
          
                Baseline
                
                  Widely available
                
                
              
        
        
        
          
                
              
                
              
                
              
        
        
      
      This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
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> | 
ブラウザーの互換性
Loading…
関連情報
- historyグローバルオブジェクト