高速にページを戻る方法

BrowserのコントロールパネルにあるBackのボタンと同等の機能をページ内 に実現するボタンが作れます。前のページに再アクセスすることが無いので 非常に高速にバックできます。1ページ前だけでなくさらに複数ページの バックも可能です。

スクリプトソース

<FORM>
<INPUT TYPE=BUTTON VALUE="BACK" onClick="history.go(-1)">
</FORM>

スクリプト実行結果

INPUTのTYPEをBUTTONとすることで押しボタンが表示されます。 このボタンはSUBMITボタンとは異なり、何も指定しなければ押しても 何も起こりません。押した時の作業内容をonClickに指定します。 その作業として、browserの履歴を管理する object である history objectの go methodを使って、表示するページを指定数字だけ前後させます。 指定する数字が負の数ならBack、正ならForwardです。数字ではなく HTMLファイル名を指定することもできます。このボタンで移動できるのは historyにデータが残っている範囲内のみです。


Frameを使っている場合にbrowser全体のページを戻る方法

各frame内で表示されているページで先のバックボタンを 使うと、そのframe内だけのhistoryを辿ります。 そうではなく、browser全体を frameに分割される前のページに 戻すようなボタンを作るには次のようにします。

スクリプトソース

<FORM>
<INPUT TYPE=BUTTON VALUE="BACK" onClick="top.history.go(-1)">
</FORM>

topは、そのページが表示されているframeがある browserの windowを意味するJavaScriptのキーワードです。

別のframeで表示しているページを戻す

スクリプトソース

<FORM>
<INPUT TYPE=BUTTON VALUE="BACK" onClick="parent.indexframe.history.go(-1)">
</FORM>

parentは、そのページが表示されているframeを囲む windowを意味するJavaScriptのキーワードです。
indexframeはframeを作る時にFRAMEタグのNAME propertyに与えた名前です。