多個選項卡我有一個單頁的應用程序,可以有多個標籤,每個標籤做不同的動作打開。但是,如果用戶點擊刷新或返回,他們會失去他們正在處理的所有內容。有沒有辦法,可能是結合了hash-bangs和cookie,以防止丟失?例如,如果用戶要刷新,則他們使用的所有選項卡將被打開。處理與hashbang
0
A
回答
2
我建議不要餅乾,因爲它們導致不必要的開銷到HTTP請求。
AmplifyJS
提供跨瀏覽器支持用於持久性數據,使用localStorage
儘可能與回退到sessionStorage
,globalStorage
和userData
(IE)。
1
您可能需要使用onbeforeunload
事件。這個事件在用戶「卸載」(刷新/重定向/等)之前調用(顧名思義),它允許你警告用戶他試圖擺脫未保存數據的頁面。
window.onbeforeunload = function(e) {
e = e || window.event;
var warning = 'You\'ve made changes to this page. Are you sure you don\'t want to save them?';
if(e) {
e.returnValue = warning;
}
return warning;
}
查看MDN Docs瞭解有關該事件的更詳細概述。
有大量的方法來保存數據,如localStorage
,IndexedDB
,AJAX
到服務器和(最後)Cookies
。
+0
這可能是我會做什麼。謝謝。 – LordZardeck 2012-03-18 21:26:36
相關問題
- 1. 在asp.net中處理hashbang(#!)mvc3(路由)
- 2. 如何處理Facebook分享/像hashbang網址?
- 3. 使用angular-ui-router處理沒有hashbang的路由
- 4. jQuery無法識別的表達與hashbang
- 5. NGINX hashbang重寫
- 6. Superfish和hashbang
- 7. 處理與XSLT
- 8. PerformanceCounter與處理
- 9. Angular2 rc.5和hashbang
- 10. Hashbang逃到片段
- 11. Sql處理與ASP.NET運行時處理
- 12. 處理與Newtonsoft JSON
- 13. 與未處理HttpException
- 14. 如何處理與[]
- 15. Firefox與IE:innerHTML處理
- 16. 服務與處理
- 17. 處理與的WebPack
- 18. 與預處理宏
- 19. 處理XML與XSL
- 20. 拖放與處理
- 21. Hashbang for Gnome .desktop文件
- 22. 使用Ember.js的Hashbang URLs
- 23. Rails處理.Erb與Nils
- 24. 蟒蛇多處理與maxtasksperchild
- 25. .NET遠程處理與SOA
- 26. 與Visual Studio字處理2013
- 27. 表單處理與JavaScript
- 28. 處理笨與參數
- 29. 處理503錯誤與jquery
- 30. 處理與恢復SIGSEGV?
沒有特別的原因不得不使用cookie,你也可以使用localStorage的......? – dmp 2012-03-18 21:17:24
必須與所有瀏覽器一起使用。 HTML5是不是一種選擇 – LordZardeck 2012-03-18 21:20:23
這會是很大的下一次這個問題提:) – Saebekassebil 2012-03-18 21:25:27