① js中監聽瀏覽器窗口關閉事件
試試將window.onbeforeunload = onbeforeunload_handler;改成
window.onbeforeunload = onbeforeunload_handler();//加上括弧,代表調用版執行權
② 急!!!JS捕獲頁面關閉事件的方法
只能用折衷的辦法,LZ可以用下面這種專辦法試試屬
<Script language="javascript">
var ClosesWindow = true;
function CheckWindowClosed()
{
alert('Page Closed');
}
</script>
<body onBeforeUnload="if(ClosesWindow == true){CheckWindowClosed();}" onmouseover="ClosesWindow=false;" onmouseout="ClosesWindow=true;">
</body>
③ js 怎麼監聽到頁面關閉或頁面跳轉事件
js 怎麼監聽到頁面關閉或頁面跳轉事件,以下介紹方法:
//在頁面關閉或者跳轉的時候專調用屬
window.onbeforeunload = function (e) {
return e.returnValue = '確認關閉?';
}
window.onunload = function () {
//這個執行完onbeforeunload 會調用該function,
//alert()是不會有彈出的。
}
調用上面的代碼,用谷歌瀏覽器關閉瀏覽頁面或者跳轉頁面都會彈出下面頁面詢問。
注意:刷新的時候也會彈出詢問,這監控也把刷新當成重新打開頁面相當跳轉。
④ 基於JavaScript判斷瀏覽器到底是關閉還是刷
刷新:
//對於ie,谷歌,360:
//頁面載入時只執行onload
//頁面刷新時,刷新之前執行onbeforeunload事件,在新頁面即將替換舊頁面時onunload事件,最後onload事件。
//頁面關閉時,先onbeforeunload事件,再onunload事件。
//對於火狐:
//頁面刷新時,只執行onunload;頁面關閉時,只執行onbeforeunload事件
刷新的時候先onbeforeunload,然後取服務端請求數據,在新頁面即將替換舊頁面時onunload事件,而頁面關閉時,先onbeforeunload事件,再立即onunload事件。那麼在刷新的時候,onbeforeunload與onunload之間的時間肯定比關閉的時候時間長,經過測試確實如此。
關閉:
使用onunload或onbeforeunload可以監聽瀏覽器關閉事件,但是無法區分關閉與刷新。以下js代碼可以部分監聽關閉瀏覽器的事件!
//滑鼠相對於用戶屏幕的水平位置 - 窗口左上角相對於屏幕左上角的水平位置 = 滑鼠在當前窗口上的水平位置
var n = window.event.screenX - window.screenLeft;
//滑鼠在當前窗口內時,n<m,b為false;滑鼠在當前窗口外時,n>m,b為true。20這個值是指關閉按鈕的寬度
var b = n > document.documentElement.scrollWidth-20;
//滑鼠在客戶區內時,window.event.clientY>0;滑鼠在客戶區外時,window.event.clientY<0
if(b && window.event.clientY < 0 || window.event.altKey || window.event.ctrlKey){
關閉瀏覽器時你想做的事
}else if(event.clientY > document.body.clientHeight || event.altKey){
關閉瀏覽器時你想做的事
}
這段js能監聽到滑鼠點擊瀏覽器關閉按鈕、瀏覽器狀態欄滑鼠右鍵彈出菜單中的關閉以及各種快捷鍵。但是雙擊瀏覽器坐上角圖標關閉瀏覽器和關閉標簽頁無法監聽。
⑤ 在Chrome中怎麼用JS獲取關閉選項卡事件
經過測試可以的復,不知道制LZ是怎麼寫的,但是要return一個string,這個string是用來提示用戶的。例子如下:
window.onbeforeunload = function(){
return "Are you sure to leave?" ;
}
你可以測試一下。
⑥ 請教,js如何在關閉瀏覽器時觸發一個事件
在瀏覽器關閉之前如果需要有操作的話,應該監聽 window.onbeforeunload 事件。
這個事件會在頁面銷毀前觸專發(關屬閉標簽,刷新頁面等)。onbeforeunload 的返回值如果是true,那麼這個會彈出提示框,詢問用戶是否關閉頁面.
如果在頁面關閉前要發出一個非同步請求,沒有辦法保證請求一定能發送成功。因為有可能在非同步操作沒有執行的情況下就已經關掉了頁面的進程。
window.onbeforeunload=function(){
$.ajax({...});
returntrue;
};