- - PR -
ブラウザの「戻る」ボタンを効かなくする方法がありますか?
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-02-15 19:54
http://www.broadband-xp.com/hidesource/windowopen.html
なんかはどうでしょうか? いろんな抜け道はありますが、とりあえず大概は大丈夫かと思います。 #JSF は、あんまり知らないので、ここから下は見当違いだったらごめんなさい。 あと、こんなんはどうでしょうか? 1.POST変数 で、pagenum というような hidden の値を常に持っていて、一画面ごとにインクリメントする。 2.サーバのセッション変数でも pagenum を管理しておいてページへのアクセスごとにチェックする。 3.pagenum が期待される値と違ったら(通常は戻るを使ったり、リロードした場合)は、ログイン画面に移動する。 | ||||||||
|
投稿日時: 2006-02-15 20:29
ブラウザの戻るボタンを非アクティブにする(グレーとか)方法は、
申し訳ありませんが、自分にはわかりません。 javascriptが有効でないといけませんが、 ・メニューやボタンのないウィンドウを立ち上げて、そこで操作させる ・ヒストリーを操作して、履歴を残さないようにする といったあたりしかおもいつきませんでした。 前者は、戻るボタンは表示されませんが、Backspaceキーとかマウスだとかで実質戻れますが。 後者は履歴が残らないので、戻りようがないですが、javascriptが有効でないとやっぱりダメ。 仕様や前提で決まっているのかもしれませんが、 ブラウザによっても実現できる方法は異なってくるくるかもしれません。 (IEって限定してても、IEコンポーネントのブラウザはどうなるか?とか) | ||||||||
|
投稿日時: 2006-02-15 21:10
そのとおりです、フォローありがとうございます。 先にも書きましたが "根本的な" 解決策は、現状のままではないです。 まず、ブラウザは様々なので戻るボタンを無効化は基本的にできません。 クライアント側の制御はスクリプトになるわけですが、無効化できるのでこれもダメですね。 kalze さんもご指摘しているように、仕様を見直して頂くのが最も適切な対応と言えるでしょう。 というのは、1 行では伝わるはずもなく... ですね。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-02-16 05:46
ログインの仕組みを自前で用意していらっしゃる見たいですが、サーブレットコンテナが備えている認証機能を利用してはいかがでしょうか。
何が問題となっているのか良く理解していなのですが、認証に関わる大抵の問題はかなりシンプルに解決できます。 | ||||||||
|
投稿日時: 2006-02-16 10:44
有難うございます。
kalzeさんからの「・ヒストリーを操作して、履歴を残さないようにする」ですが、 IE6.0の場合はJavascriptでどうやって実現できます? ご教授ください。 _________________ | ||||||||
|
投稿日時: 2006-02-16 11:20
やり方は知りませんが、
・JavaScript で履歴を扱うオブジェクトは何なのか調査 http://tinyurl.com/a3rtq ・履歴を扱うオブジェクトにどんなメソッドがあるか調査 って方向でどうでしょう。 [ メッセージ編集済み 編集者: インギ 編集日時 2006-02-16 11:23 ] | ||||||||
|
投稿日時: 2006-02-16 12:43
とか。 googleで「ブラウザ 戻る 無効」で検索すると、この手の話がずらーっと並ぶんですが | ||||||||
|
投稿日時: 2006-02-16 17:37
kalzeさんからの下記のScriptで解決できたようです。
有難うございました。 <SCRIPT> history.forward(1); </SCRIPT |