回答
當用戶點擊返回時,瀏覽器從頭開始重新加載頁面(除了Firefox,它會記住表單的值),舊頁面的Javascript和它的效果都消失了。
要解決此問題,您可以將頁面的狀態保存在cookie中,然後在頁面加載並恢復狀態時使用Javascript cookie library讀取cookie。
使用JS完成此操作的唯一方法是將Cookie與用戶訪問的項目一起存儲,並在加載頁面時將cookie中的條目標記爲「已訪問」。缺點是在加載到視圖中的項目和被標記爲已訪問的項目之間會有一個小的延遲(有點像StackOverflow中的一個,帶有用戶的忽略和最喜歡的標籤)。
除此之外,您可以使用一些服務器端代碼記住會話中訪問的條目。
如果條目<一個>元素,你可以與他們的風格:
a:visited {}
爲什麼downvote? – 2010-06-08 13:47:19
IE 8,Firefox和其他瀏覽器記住上一回按下按鈕形式的條目。您可以使用它在頁面中存儲用戶刷新或返回時的某些狀態。
在頁面上創建一個隱藏的textarea,並在那裏存儲你的額外狀態。我使用onbeforeunload來存儲狀態,然後使用onload再次將其拉出。
不幸的是IE6和7不支持記住你的表單值或重新加載,所以如果你關心那些瀏覽器,你將不得不採取類似於cookies的方式。請記住保存在cookie中的數據量很小,因爲它會在每次請求時發送到服務器。你也會想用某種方式清除那個cookie。
當我想保持大量不同的狀態時,我使用JSON.stringify from Douglas Crockford's json2.js。
感謝您的幫助! – 2010-06-08 13:45:37
建議您可以使用cookies。或者,如果您不想這樣做,可以將信息存儲在隱藏表單域中,並且在頁面加載(或domready)時讀取該值並根據需要設置頁面狀態。
- 1. 處理硬件後退按鈕單擊
- 2. Zxing處理後退按鈕
- 3. 處理後退按鈕
- 4. 後退按鈕處理wp7
- 5. 處理android後退按鈕
- 6. 處理後退按鈕
- 7. Android - 處理後退按鈕
- 8. 後退按鈕處理
- 9. 單擊後退按鈕之前處理事件
- 10. 如何處理退出後單擊「返回」按鈕的用戶
- 11. 管理員重定向到後退按鈕後的/ home單擊
- 12. React Native - 設備後退按鈕處理
- 13. Android:在asynctask中處理後退按鈕
- 14. 安卓後退按鈕處理
- 15. 在jquery中處理後退按鈕
- 16. 如何可能處理後退按鈕
- 17. 處理後退按鈕的問題
- 18. XPage:處理瀏覽器後退按鈕
- 19. Android後退按鈕在Appcelerator中處理
- 20. 處理後退按鈕的Android(onBackPressed)
- 21. 後退按鈕處理片段
- 22. 通過單擊後退按鈕
- 23. 請在單擊後退按鈕UWP
- 24. Xamarin導航欄後退按鈕單擊
- 25. 後退按鈕單擊不起作用
- 26. JS後退按鈕點擊
- 27. Google在退出後如何處理後退按鈕?
- 28. 如何避免[navpush]生成的後退按鈕(處理生成後退按鈕)
- 29. 單擊後退按鈕後防止重新填充表單域
- 30. 後退按鈕
針對該特定問題的解決方案過於複雜,但謝謝:) – 2010-06-08 13:46:24
如果使用庫,Cookie根本不復雜。 – SLaks 2010-06-08 13:54:02