2012-02-27 9 views
1

私はソーシャルネットワーキングのウェブサイトを開発しており、可能な限りダイナミックにするつもりです。これまでに遭遇した唯一の大きな問題は、jQueryのロード機能を使用するときにブラウザの戻るボタンを使用できないことです。jQueryのロード機能は、戻るボタンを許可していませんか?

私はjavascript関数を使用する場合、実際のユーザーのURLを変更するには、次のコードを追加しました:私は、私はそれが望んでいたとしてそれがうまくいくと仮定

var stateObj = { foo: page }; 
history.pushState(stateObj, page, page); 

が、残念ながらURLの変更が、コンテンツそのままの状態になります。

訪問した最後のページをどのように読み込むことができますか?動的ではなく、通常の通常の戻るボタンと同じように機能します。

あなたが実際にあなたが一時的なURL訪れることができます何が起こっているかの例たい場合:
メール:[email protected]
パスワードあなたはログインする必要がありますhttp://goo.gl/0BOUV
は、ので、ここでいくつかのログイン情報です:パスワード

+0

私はこのJavaScriptライブラリで幸いです:https://github.com/balupton/History.js/ – Blender

答えて

2

表示されたURLを変更するのにpushStateを使用すると、ユーザーが「戻る」を押すと、ブラウザは直接URLをリロードしません。代わりに、onpopstateイベントがトリガーされます。詳細については、the Mozilla docsを参照してください。状態データに基づいて適切なページをリロードするそのイベントのハンドラを記述する必要があります。

ちなみに、pushStateは新しいHTML5の機能であるため、一部のブラウザではご利用いただけません。 History.jsライブラリ@Blenderは、ブラウザ間の互換性の良いレイヤーを提供します。ライブラリを使用している場合でも、ユーザーが戻るボタンを使用したときの状態変更イベントを処理する必要があります。

関連する問題