「戻る」ボタン無効化・別機能設定
1ページ目の表示です
…なんですか? これは
現在、何ページ目の表示かと、「次のページへ」のリンクがあります。
適当な回数、次のページへのリンクを押して、ページを進めてみてください。
3~5ページくらい進めば十分かな。URL の C= の値がそのページを示していますので、URL も注意してみてね。
この解説は、どこのページでも読めますので、ページを進めたら続きを読んでください。
進めましたか? 進めましたね?
では、「ブラウザの」戻るボタンを押してみましょう。
あらふしぎ。1ページ目に戻りました。URL も、たしかに1ページ目のものです。
…あれ? あまり不思議に思ってない?
よく考えて見ましょう。Javascript は、「ページ内のものを」結構自由に操作できますが、ブラウザの戻るボタンの機能までは書き換えられないのです。
ここに書いた技法は、仕事で開発したもので、HTML5 「未対応」ブラウザも相手にする必要がありました。
後日、HTML5 で「素直に」対応したバージョンも作ろうと思います。が、それは普通の使い方なので、Tips ではないな…
1ページ目に戻ろうと思ったら、あなたが進めたページの分だけ、順番に戻らないといけないはず。
もう少し実験してみましょう。
次の select ボックスで、戻りたいページを指定してから、やはりブラウザの戻るボタンを押してみてください。
選んだらブラウザの「戻る」ボタンを押してね。
選んだページに戻れたでしょう?
「戻る」ボタンの戻り先(進み先?)は、固定ではなく、自由に書き換えられるのです。
今は実験だから、C= の部分しか変えていませんけどね。
もちろん、先に書いたように、Javascript では「戻る」ボタンの機能を書き換えることはできません。
ここでやっているのは、まるで書き換えたかのように見せる「Hack」です。
だから、しつこく戻り続けると、いつか Hack された「履歴」の中を突き抜けて、本当の以前のページに戻れたりします。
解説は、以前に日記に書いているのでそちらを参照のこと。
日記の文章書いたの、2011年3月11日でした。大変なことがあったので、アップロードは1ヶ月以上たってからになりましたが。
…で、ごめんなさい。このページにいる限り、戻るボタンの機能が書き換えられているので、リンクなどから別のページに抜けてください。
ホント、ご迷惑をおかけします…