[英]Confirmation before leaving/closing of tab?
我試圖在用戶關閉選項卡或轉到另一個選項卡(如 facebook、gmail、GoDaddy 和其他人)之前顯示一個確認彈出窗口。
我的代碼適用於 Firefox,但不適用於 chrome、safari 等其他瀏覽器。
<script type="text/javascript">
var hook = true;
window.onbeforeunload = function() {
if (hook) {
return "Did you save"
}
}
function unhook() {
hook=false;
}
</script>
在單擊按鈕和鏈接時調用 unhook()
<a href="http://example.com" onClick="unhook()">No Block URL</a>
請幫我解決這個問題。
如果您查看window.beforeunload()
的api ,您可以看到,雖然廣泛支持基本卸載事件,但自定義消息只能在 Internet Explorer 和某些瀏覽器的某些版本中設置。 所以只需使用普通的標准消息。
此功能(自定義消息)經常被惡意站點利用,以有害或惡意的方式與用戶交互。 這就是為什么許多瀏覽器不再支持這一點的原因,直到某些補丁消除了對用戶的威脅。
標准消息解決方案:
window.addEventListener('beforeunload', function (e) {
// Cancel the event
e.preventDefault();
// Chrome requires returnValue to be set
e.returnValue = '';
});
看看Ouibounce它有助於檢測用戶何時即將離開頁面(它查看光標的位置)。 你可能可以建立這個庫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.