2010-12-03 37 views
0

我正在討論使用多個過濾器的列表頁面。實際上,這些過濾器都在用戶控制之下,並且已經過調整。我可以在應用說4-5過濾器後緩存頁面的狀態,這樣如果我在應用這些過濾器後移動到另一個頁面,然後通過按回按鈕返回原始頁面,我將看到頁面的相同過濾狀態?在應用任何過濾器後,我不會更改網址。這可以通過輸出緩存完成嗎?緩存整個頁面,使其在使用後退按鈕時看起來相同

回答

0

您要求的內容與緩存無關。嗯,它確實存在,但不是我認爲你在談論的那種緩存:-) FireFox具有所謂的bfcache,它存儲頁面DOM的狀態,就像您在離開該頁面時的狀態一樣。這是用來當你回到頁面時,它看起來和你上次在那裏時一樣。

但是,某些事件會導致bfcache不能使用。例如,this question details how the unload event affects things。如果我是你,我會重新訪問「我在應用任何過濾器後不更改網址」聲明 - 我會建議將網頁的狀態存儲在docuemnt.location.hash中。 Here's a question which details that concept