我想在用戶離開選項卡之前通知用戶保存更改(僅當他們沒有單擊保存按鈕時)。我發現了很多關於髒頁面,jquery,onbeforeunload等的示例,但是每個示例都會在用戶離開頁面之前通知用戶,因爲我想在他們更改或移動到同一頁面導航欄中的其他選項卡之前通知他們。請幫我出來通知用戶在更改選項卡時保存更改
1
A
回答
0
很基本,也可能不符合你的需求,但它的種可能實現。
該方法只檢測window
的blur
和focus
事件。另外,它還會在窗口外點擊時觸發警報。不幸的是,您可能會盡可能接近檢測標籤更改。
$(window).focus(function() {
//They are staying on the page
console.log("You've chocen to stay")
});
$(window).blur(function() {
//They're leaving the tab
alert("Sure you don't want to stay?");
});
+0
$ scope。$ on('$ destroy',function(){ \t \t window.onbeforeunload = undefined; \t}); \t $範圍。在$( '$ locationChangeStart',函數(事件,接下來,電流){ \t \t如果($ scope.needToConfirm ==真){ \t \t \t如果(確認(「你忘了保存!!「)){ \t \t \t \t事件。的preventDefault(); \t \t \t} \t \t} \t});這對我來說Thanq都有效 – Meena
相關問題
- 1. JTabbedPane:更改選項卡標題時更改選項卡大小
- 2. p:selectOneMenu在選項卡變更時更改
- 3. 在用戶選擇時更改選項值更改
- 4. 當選項卡聚焦MultiPageEditorPart中的更改時獲取通知
- 5. 更改URL不會更改選項卡
- 6. TabControl保存選定的選項卡項目已更改
- 7. 如何知道用戶是否更改了選項卡?
- 8. jquery選項卡更改選項卡更改時的背景圖片
- 9. 收到推送通知後更改選定選項卡
- 10. EF 5在調用保存更改時未保存更改
- 11. 更改ViewPager選項卡ImageViews:
- 12. Detect Materializecss選項卡更改
- 13. 更改選項卡順序
- 14. MVVM Tabcontrol更改選項卡
- 15. Intellij和更改選項卡
- 16. 在選項卡更改期間更改應用程序標題
- 17. 更改選項卡選擇選項卡時的文本顏色
- 18. 如何在TabbedViewNavigatorApplication中更改選項卡時保持視圖
- 19. Phaser - 如何在更改Web選項卡時保持補間?
- 20. 複選框 - 更改通知
- 21. Android - 每次更改通知時更改通知的變量
- 22. 當選定的功能區選項卡項更改時更改視圖
- 23. 在其他選項卡中更改indexedDB條目時收到通知
- 24. 在方向更改後更改選項卡後,選項卡內容保持可見狀態
- 25. 如何保存用戶交互更改的選項?
- 26. 使用android上的選項卡更改方向更改佈局?
- 27. 更改時通知WPF DataGrid
- 28. gpio值更改時通知
- 29. 使用Javascript更改Chrome選項卡
- 30. 使用按鈕更改QTabWidget選項卡
這是不可能的。當用戶在活動標籤之間切換時,Javascript不會收到任何事件。 –
爲您的頁面上的選項卡提供點擊/焦點處理程序。點擊/聚焦時,檢查數據是否被保存,當一個選項卡不等於他們當前所在的選項卡時。如果您在討論用戶何時切換瀏覽器選項卡,$(window).on(「blur」,function(){alert(「您爲什麼要離開?」);});會在用戶嘗試切換瀏覽器標籤時提醒用戶 – mhodges
可能定義了一個在用戶保存時變爲true的變量,以及每次點擊新標籤時檢查變量值的函數。你只需要小心地重新設置它,或者每個標籤都有一個單獨的變量(但是你可能仍然希望重置,因爲它們可能會在同一個會話中導航回該標籤並添加更多信息 - 而且你不會「不想已被保存了它的舊值在這種情況下仍然存在) – HolyMoly