step1 : {id: 1, url: /ste1.php, ... }, step2 : {id: 2, url: /step2.php, ... },...
3
2
一緒にハロー
戻るボタンと進むボタンでajax呼び出し履歴を制御するソリューションを探しています。
だから私がajaxコールをマカにしてから「戻る」を押すと、元のページをリロードしたい。
ajax呼び出しを行ってから別の呼び出しを行い、次に戻るボタンを押すと、最初のajax呼び出しをもう一度やりたいです。
等々 … (すなわち 私が今進むボタンを押すと、2番目のajax collシェルがやり直されます;-))
ありがとう
更新
よく、http://www.asual.com/jquery/address/docs/ [jQuery Address]という名前の非常に素晴らしいjqueryプラグインですべてを解決しました。
事は、私は元のサイトで手に入れるための問題があるということです。 「mysite.foo/step1」に移動してからajax呼び出しをトリガーし、「maysite.foo/step1#/#step2」に移動します。「戻る」ボタンを押すと、コンテンツ(step2の) )、元のランディングページに関する情報を取得できません。それを再読み込みするには…
修正:私はインデックスを付けられたajaxコールを保存する配列を持っています ステップ2。
step1 : {id: 1, url: /ste1.php, ... }, step2 : {id: 2, url: /step2.php, ... },...
また、ハッシュを設定する関数は、ajaxリクエストを呼び出します。
1 Answer
3
ドキュメントの場所のハッシュにajaxの「状態」を保存する必要があります(つまり、 http:// page-url#ajax-state)。
ハッシュコンポーネントのみを変更すると、ブラウザはページのリロードを行いませんが、ブラウザの履歴にはURLの変更が記録されます。 したがって、戻るボタンを押すと、ドキュメントハッシュに格納されている情報に基づいてajax呼び出しを再生できます。
この質問も参照してください:https://stackoverflow.com/questions/172957/detecting-back-button-hash-change-in-url[URLの戻るボタン/ハッシュ変更の検出]