2012-01-31 38 views
4

我有一個使用Ajax生成結果列表的頁面。然後有一個鏈接點擊另一個詳細信息頁面。當我在詳細信息頁面上,然後單擊後退按鈕。結果頁面列表將重新加載。無論如何,要停止ajax重新加載並緩存結果。無論如何也有緩存位置。如何在單擊後退按鈕時避免重新加載ajax

感謝你的幫助

回答

0

您可以通過改變window.location.hash財產保存狀態。散列是您可以更改的URL的唯一部分,不會強制重新加載URL。

window.location.hash = 'some-id';會翻譯成您的網址,如下所示:index.html#some-id

然後,您可以得到哈希在頁面加載時和用戶界面設置爲正確的狀態:

if (window.location.hash == 'some-id') { 
    //setup UI for `some-id` identifier 
} 
+1

我認爲問題不在於重新加載url,而是當用戶返回該頁面時是否可以緩存並恢復頁面的JavaScript狀態 - 這將需要瀏覽器支持,因此:瀏覽器是否支持它? – Jeff 2012-01-31 23:54:47

+0

是的,對我來說,在我的答案中發佈通知是一個好主意。這不是一個直接的答案,而是一個可能被忽視的選項。我想這樣做可以將信息存儲在cookie(或localStorage/sessionStorage)中,並根據URL檢索信息。 – Jasper 2012-01-31 23:59:02

相關問題