1

私は次のようなものでURLを更新しています:

window.history.pushState(null, "Page title", "/?param=" + myParamValue);

これは正常に機能しますが、ユーザーが戻るボタンを押すと、URL は更新されますが、ページはリロードされません。

コンテンツを更新する ajax ルーチンがありますが、可能であれば、戻る/進むナビゲーションの再実装を台無しにしたくありません。また、ユーザーが戻る/進むブラウザ ボタンを押した場合にページをリロードしたいだけです。

Q : ユーザーからのブラウザーの戻る/進むアクションで、指定された URL をページに強制的にリロードさせる方法はありますか?

おまけ Qwindow.history.pushState : また、ブラウザーが古いブラウザーをサポートしていない場合はどうなりますか? そのコードを try/catch ブロックで囲みますか?

4

2 に答える 2

3
if(typeof window.history.pushState === 'function')
    //handle your url rewriting
else
    //support for older browsers

戻るボタンのサポートに関する質問については、コメントで提供されているリンクが、この機能の非常に優れた実装を提供しています。

于 2012-06-30T17:21:06.380 に答える
1

この jQuery プラグインを見てください。役に立つかもしれません。

http://www.asual.com/jquery/address/

このスレッドを読んで見つけました:

https://stackoverflow.com/questions/116446/what-is-the-best-back-button-jquery-plugin

お役に立てば幸いです。

古いブラウザーの質問については、最新のブラウザーも必要とする ajax を使用しているため、気にする必要はないと思います。主な質問は次のとおりです。誰があなたの Web サイトを訪問しますか? 主に40代以上の方なら気になさる方がいいかも…

あくまで私の意見です;)

編集: IE9 には注意してください。IE9 では処理されません。情報についてはnbrooksへのthx

于 2012-06-30T17:20:54.350 に答える