Web History API
Web History APIは、window.history オブジェクトにアクセスするための簡便なメソッドを提供します。
window.history オブジェクトには、ユーザーが訪れたURL(ウェブサイト)の履歴が含まれています。
Web History APIは、すべてのブラウザでサポートされています:
| ブラウザ | サポート状況 |
|---|---|
| Chrome | 対応 |
| Edge | 対応 |
| Firefox | 対応 |
| Safari | 対応 |
| Opera | 対応 |
1. History back() メソッド
back() メソッドは、window.history リスト内の直前のURLをロードします。
これは、ブラウザのツールバーにある「戻る」ボタン(左矢印)をクリックするのと全く同じ動作をプログラムから実行します。
1.1 実装コードの例
<button onclick="myFunction()">戻る</button>
<script>
function myFunction() {
// ブラウザ履歴を1つ戻る
window.history.back();
}
</script>2. History go() メソッド
go() メソッドは、履歴リストから特定の相対的な位置にあるURLをロードします。
2.1 実装コードの例
以下のコードは、履歴を2ページ分戻る例です。
<button onclick="myFunction()">2ページ戻る</button>
<script>
function myFunction() {
// 負の値を指定すると履歴を戻り、正の値を指定すると進みます
window.history.go(-2);
}
</script>3. History オブジェクトのプロパティ
History オブジェクトには以下のプロパティが用意されています。
| プロパティ | 説明 |
|---|---|
| length | 履歴リストに含まれるURLの総数を返します。 |
4. History オブジェクトのメソッド
History オブジェクトで利用可能な主要なメソッドは以下の通りです。
| メソッド | 説明 |
|---|---|
| back() | 履歴リスト内の直前のURLをロードします。 |
| forward() | 履歴リスト内の次のURLをロードします(「進む」動作)。 |
| go() | 履歴リストから特定のURL(相対的な数値指定)をロードします。 |