一、JS關閉頁面的代碼
通過window.close()方法可以關閉當前瀏覽器窗口:
window.close();
但是需要注意的是,只有通過window.open()方法打開的窗口才可以通過window.close()關閉,通過瀏覽器左上角的關閉按鈕或者使用Ctrl + W快捷鍵關閉的窗口是無法通過window.close()關閉的
二、JS關閉頁面的title
在通過window.open()方法打開的窗口中,可以通過給打開的頁面設置title屬性,然後在通過window.close()關閉時可以攜帶提示信息:
var newWindow = window.open("http://www.example.com","myWindow","width=200,height=100"); newWindow.document.title = "關閉提示"; newWindow.close();
三、JS關閉頁面事件
可以通過給window對象綁定beforeunload事件,在關閉窗口前進行一些操作或者給出確認提示:
window.addEventListener("beforeunload", function(event) { event.preventDefault(); // 在此處添加需要執行的操作 event.returnValue = ''; });
需要注意的是,event.preventDefault()方法是阻止窗口關閉的默認行為,如果要關閉窗口,必須將event.returnValue設置為空。
四、JS關閉頁面觸發的事件
頁面關閉時會觸發unload事件:
window.addEventListener("unload", function(event) { // 在此處添加需要執行的操作 });
五、JS關閉頁面方法
除了使用window.close()方法來關閉當前窗口,還可以使用window.open()方法打開一個空白窗口,然後通過window.opener.close()來關閉父窗口:
var newWindow = window.open("about:blank", "_self"); newWindow.opener = null; newWindow.close();
六、JS關閉頁面彈窗
在關閉窗口時彈出確認提示框:
window.onbeforeunload = function() { return "您確定要離開嗎?"; };
七、JS關閉頁面監視器
可以通過使用setInterval()方法來監視當前窗口是否被關閉:
var closeWindow = null; var checkWindow = function() { if(window.closed) { clearInterval(closeWindow); // 在此處添加需要執行的操作 } } closeWindow = setInterval(checkWindow, 500);
上面的代碼每隔500毫秒檢查一次當前窗口是否被關閉,如果被關閉了就清除監視器。
八、JS關閉頁面彈出消息
在關閉窗口時彈出消息提示框:
window.onbeforeunload = function() { alert("您確定要離開嗎?"); };
九、JS停止關閉頁面
可以通過使用clearInterval()方法停止已經啟動的關閉窗口操作:
var newWindow = window.open("http://www.example.com","myWindow","width=200,height=100"); var closeWindow = setInterval(function() { newWindow.close(); }, 5000); // 停止關閉窗口操作 clearInterval(closeWindow);
上面的代碼在5秒後會關閉新打開的窗口,但是可以通過clearInterval()方法來取消關閉。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/151408.html