1

私はソーシャルネットワーキングウェブサイトを開発していて、それを可能な限り動的にするつもりです。私がこれまでに遭遇した唯一の大きな問題は、jQueryのロード関数を使用しているときにブラウザの戻るボタンを使用できないことです。

次のコードを追加して、javascript関数を使用したときにユーザーのURLを実際に変更します。

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

思った通りに動作すると思いましたが、残念ながらURLは変わりますが、ページの内容はそのままです。

最後にアクセスしたページをロードする方法を知っている人はいますか?動的ではなく、通常の戻るボタンと同じように機能します。

実際に起こっていることの例が必要な場合は、一時的なURLにアクセスできます。http: //goo.gl/0BOUV
ログインする必要があるため、ログインの詳細は次のとおりです。
メール:test@email.com
パスワード:パスワード

4

1 に答える 1

2

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

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

于 2012-02-27T14:18:14.000 に答える