我正在開發一個具有DNS記錄管理器的虛擬主機面板。我必須使用大量JavaScript才能使其表現幾乎像桌面應用程序一樣。在某些鏈接上禁用瀏覽器onUnload?
我真的想在瀏覽器運行時顯示一個自定義對話窗口beforeunload
但是經過一些研究後,我發現我被瀏覽器的默認對話窗口卡住了。
因此,下面的這段JavaScript代碼就是這麼做的,我的問題是我需要確保它不會在某些鏈接點擊時被解僱。
我希望能夠維護一個CSS類名的數組,如果點擊的鏈接在這個數組中,那麼它將不會顯示onunload事件。
我相信這對於JavaScript開發人員來說很簡單。有人可以告訴我如何做到這一點?
//sample Class array
safeLinks = ['test', 'test2', 'test3', 'test4', 'test5'];
// onunload event
$(window).on('beforeunload', function(){
return 'Are you sure you want to leave?';
});
我的腳本有問題。我有一個人們可以編輯一些照片的頁面。人們也可以刪除照片,並在他們按下時刪除確認內容。我在'safeLinks'上添加了該按鈕。直到有人點擊刪除,您的腳本完美無缺。如果他們取消確認,您的腳本將停止工作。我怎樣才能解決這個問題?每次有人點擊刪除並取消刪除確認時,我需要將'beforeunload'設置爲'off'。 – sorinu26 2014-01-11 21:39:29
@ sorinu26:您可以取消該事件的冒泡。 'e.stopPropagation();'在確認監聽器中。 – Ryan 2014-01-11 22:33:48
作品!謝謝! – sorinu26 2014-01-11 23:31:26