P粉1869047312023-08-25 00:34:09
不再是了。所有主要瀏覽器都開始忽略實際訊息並只顯示自己的訊息。
正確。 很久以前,您可以使用confirm
或alert
,最近您可以從onbeforeunload
返回一個字串處理程序並且該字串將被顯示。現在,字串的內容將被忽略,並將其視為標誌。
當使用 jQuery 的 on
時,您確實必須在原始事件上使用 returnValue
:
$(window).on("beforeunload", function(e) { // Your message won't get displayed by modern browsers; the browser's built-in // one will be instead. But for older browsers, best to include an actual // message instead of just "x" or similar. return e.originalEvent.returnValue = "Your message here"; });
或老式的方式:
window.onbeforeunload = function() { return "Your message here"; // Probably won't be shown, see note above };
這就是你所能做的。
P粉1436404962023-08-25 00:32:48
tl;dr - 在大多數現代瀏覽器中您無法再設定自訂訊息
為了在使用者關閉視窗之前設定確認訊息,您可以使用
jQuery
#$(window).bind("beforeunload",function(event) { return "You have some unsaved changes"; });
Javascript
window.onbeforeunload = function() { return "Leaving this page will reset the wizard"; };
重要的是要注意,您不能將 確認/警報
內部 beforeunload< /代码>
##beforeunload
以下是使用我有權限存取的瀏覽器的結果:
Chrome:#
火狐瀏覽器:#
Safari:#