0

history.back(-1) を使用しており、また history.go(-1) を使用して前の URL に移動しようとしましたが、以前の URL に正常に移動しましたが、Chrome ではキャッシュからコンテンツを取得するため、変更を加えた場合ajax を使用して他のページに移動し、以前の URL に戻りたい場合は、ページを更新し、キャッシュではなく DB から新しい更新されたコンテンツを取得する必要があります。この問題は chrome のみで発生し、Safari 5 でも発生する可能性があります。

または、履歴オブジェクトを使用する以外に、以前の URL に移動する方法はありますか? document.referrerを使用して行うことはできますが、ハッシュ (#) 値は得られません。URL http://www.example.com/home.html#navigateがあり、 document.referrerを使用すると、http://www.example.com/home.htmlをください

助けてください

4

1 に答える 1

1

あなたはできる:

  1. no-cacheを設定して、ファイルキャッシュを無効にします。(ファイルからヘッダーを変更するバックエンドでも実行できますが、使用しているバックエンドはわかりません。)
  2. を使用してsetIntervalを検証しwindow.location.hash、コールバックを設定できます。
  3. ページ コンテンツからの DOM 参照を変数に保存して、一部のコンテンツがxhrセキュリティのために変更を適用する必要がある場合にコンテンツを変更することができます。そのため、ユーザーが履歴を元に戻すと、DOM はメモリ要素ツリーで構築され、ページこの時点で変更されています。(私はこれをテストしていませんが、ブラウザが DOM を設定するために使用するインスタンスを参照するだけなので、理論的にはうまくいく可能性があります)。

これがお役に立てば幸いですが、あなたが提供した情報では、これ以上先に進むことはできません...

于 2013-01-08T07:29:18.313 に答える