我明白,當你通過後退按鈕返回到頁面複選框將保持選中狀態。然而,使用jquery的addClass添加的類不會。有人能幫助我理解什麼時候通過後退按鈕返回時會持續嗎?另外,是否有一種方法可以保存變量的值,以便我可以使用變量值重新創建未保留的對象?通過後退按鈕返回時會持續什麼?
回答
Nothing存留 - 類不會持續,因爲DOM重新生成,JS變量不會持續,因爲代碼被重新執行等。與此同時,瀏覽器實現似乎幾乎同意保持用戶輸入儘管這種行爲不是任何官方規範的一部分,但爲了方便起見數據形式。
如果你需要一些數據來堅持在客戶端 - 機會是你建築做錯了什麼。你爲什麼試圖覆蓋瀏覽器的「返回」按鈕行爲,讓用戶回到任意狀態,而不是轉到以前的URL並重新呈現頁面?如果您的應用交互重,這個「返回」按鈕的行爲需要,您可能希望從有利於使AJAX請求的獨立頁面的用戶瀏覽和依靠像html5 history api允許執行任意代碼退避三舍將頁面置於所需的狀態。
你走不進什麼,你居然想到會儲存足夠的細節 - 也許localStorage或餅乾替代會更合適
更新:
我已經把一起a fiddle來測試遍歷歷史時表單數據將持續多久,並且隱藏字段分別是可供JS處理 - 儘管如此,仍然不是一個好主意
你是說我可以使用隱藏的表單數據,因爲它會持續? – user584583
@ user584583:我說的依賴於輸入字段可能會在瀏覽器中非常不一致並且不可靠 –
說* Nothing *持續存在有點誤導。你已經指出了一些堅持的東西:用戶輸入的表單數據。還有兩件事情是滾動位置,對於移動設備來說,縮放級別。 – Nick
它非常依賴於事實,你怎樣對待或不鏈接,也就是說,如果你這樣做,你能堅持一切的哈希值。
編輯:
你必須要熟悉單頁應用(SPA)的概念。
這是所有可能的感謝改變location hash property和管理瀏覽器歷史記錄的能力。
爲了使這個簡單的有噸圖書館像Sammy.js
每次有用戶做一個動作你推新的狀態,因此你就可以處理按後退按鈕的時間。
爲了得到它的外觀的想法一樣,檢查以下jsfiddle
在代碼中你看到的設置routes
:
Sammy(function() {
this.get('#:folder', function() { ... });
this.get('#:folder/:mailId', function() { ... });
})).run();
用於指定散列,即www.mygreatwebsite.com/#inbox/#1
和您的應用程序將如何處理它。
還有更多的會在這裏,所以我的鏈接只是起點爲你去探索。
你能澄清你寫的內容嗎?哈希? – user584583
@ user584583檢查我更新的答案。 – vittore
補充上面的回答,您可以用視圖狀態保存表單的狀態。
ViewState中允許ASP.NET在每個回發重新填充表單域服務器確保當用戶點擊提交按鈕的表單不會自動清除。
現代瀏覽器試圖持續越來越多。 Firefox在幾年前嘗試保留所有內容,包括類名稱更改,只要服務器指示該頁面可在HTTP標頭中進行緩存,並且網頁未註冊任何事件處理程序。當用戶按下後,Firefox會觸發onpageshow
和onpagehide
。
https://developer.mozilla.org/en-US/docs/Using_Firefox_1.5_caching https://www.webkit.org/blog/516/webkit-page-cache-ii-the-unload-event/
- 1. Actionbarsherlock後退按鈕不會返回
- 2. 不會返回多個後退按鈕
- 3. 通過按回退按鈕
- 4. 當使用「返回」按鈕時Div的Class不會持續
- 5. Webview後退按鈕不會返回(退出應用程序)
- 6. 當我按下連續按鈕時,爲什麼不會持續運行?
- 7. WP8後退按鈕走兩步返回
- 8. 後退按鈕,返回填寫表格
- 9. 爲什麼Internet Explorer在通過後退按鈕返回頁面時顯示正確的XML轉換?
- 10. Flash後退按鈕支持
- 11. 如何在按下設備後退按鈕時使HybridWebView返回
- 12. 通過單擊後退按鈕
- 13. 後退按鈕 - 通過視口
- 14. Android的後退按鈕不會返回到當前活動
- 15. 瀏覽器後退按鈕不會立即返回頁面 - dojo
- 16. 雙擊後退按鈕會導致網站返回兩頁
- 17. (重新) - 通過點擊後退按鈕後通過數據
- 18. 什麼是後退按鈕點擊?
- 19. 後退按鈕不回去
- 20. 返回按鈕時返回按鈕
- 21. Gerrit後續按鈕在做什麼?
- 22. 後退按鈕通知?
- 23. 通過瀏覽器後退按鈕訪問Umbraco會員區域
- 24. 返回index.html從images.html通過使用PhonePhone的手機後退按鈕android
- 25. 按「後退按鈕」時未調用「onSaveInstanceState」的原因是什麼?
- 26. 無後退按鈕執行繼續?
- 27. 繼續當點擊後退按鈕
- 28. Android:getContext()在Fragment中僅當離開後退按鈕時返回null
- 29. 單擊後退按鈕時返回 - 初學者
- 30. 爲什麼持續?在ActiveRecord :: Rollback之後返回true?
+1了良好的措辭,非平凡的問題。注意詳細說明你的情況的具體情況,還是僅僅是一個「假設」問題? –