javascript Onunload與Onbeforeunload使用小結(jié)
更新時間:2009年12月31日 02:34:32 作者:
Onunload,onbeforeunload都是在刷新或關(guān)閉時調(diào)用,可以在<script>腳本中通過window.onunload來指定或者在<body>里指定。區(qū)別在于onbeforeunload在onunload之前執(zhí)行,它還可以阻止onunload的執(zhí)行。
Onbeforeunload也是在頁面刷新或關(guān)閉時調(diào)用,Onbeforeunload是正要去服務(wù)器讀取新的頁面時調(diào)用,此時還沒開始讀?。欢鴒nunload則已經(jīng)從服務(wù)器上讀到了需要加載的新的頁面,在即將替換掉當(dāng)前頁面時調(diào)用。Onunload是無法阻止頁面的更新和關(guān)閉的。而Onbeforeunload 可以做到。曾經(jīng)做一個考試系統(tǒng),涉及到防止用戶半途退出考試(有意或者無意),代碼如下:
<body onbeforeunload=" checkLeave()">
<script>
function checkLeave(){
event.returnValue="確定放棄考試?(考試作廢,不記錄成績)";
}
</script>
這樣可以讓用戶確認(rèn)是否要退出考場,其實(shí)BLOGJAVA在用戶編寫B(tài)LOG時,如果不保存而跳轉(zhuǎn)到其他頁面,也會有一個確認(rèn)的提示(防止誤操作),也是用到Onbeforeunload。
另外還可以用來在頁面關(guān)閉的時候關(guān)閉session,代碼如下(注:用window.screenLeft > 10000 來區(qū)分關(guān)閉和刷新操作):
<body onbeforeunload=" closeSession()">
<script>
function closeSession (){
//關(guān)閉(刷新的時候不關(guān)閉Session)
if(window.screenLeft>10000){
//關(guān)閉Session的操作(可以運(yùn)用AJAX)
}
}
</script>
復(fù)制代碼 代碼如下:
<body onbeforeunload=" checkLeave()">
<script>
function checkLeave(){
event.returnValue="確定放棄考試?(考試作廢,不記錄成績)";
}
</script>
這樣可以讓用戶確認(rèn)是否要退出考場,其實(shí)BLOGJAVA在用戶編寫B(tài)LOG時,如果不保存而跳轉(zhuǎn)到其他頁面,也會有一個確認(rèn)的提示(防止誤操作),也是用到Onbeforeunload。
另外還可以用來在頁面關(guān)閉的時候關(guān)閉session,代碼如下(注:用window.screenLeft > 10000 來區(qū)分關(guān)閉和刷新操作):
復(fù)制代碼 代碼如下:
<body onbeforeunload=" closeSession()">
<script>
function closeSession (){
//關(guān)閉(刷新的時候不關(guān)閉Session)
if(window.screenLeft>10000){
//關(guān)閉Session的操作(可以運(yùn)用AJAX)
}
}
</script>
相關(guān)文章
window.location不跳轉(zhuǎn)的問題解決方法
window.location的跳轉(zhuǎn)失效的情況有沒有遇到過啊,這主要是冒泡傳遞影響了,下面有個不錯的解決方法,大家可以參考下2014-04-04動態(tài)載入/刪除/更新外部 JavaScript/Css 文件的代碼
動態(tài)載入/刪除/更新外部 JavaScript/Css 文件的代碼2010-07-07js的隱含參數(shù)(arguments,callee,caller)使用方法
本篇文章只要是對js的隱含參數(shù)(arguments,callee,caller)使用方法進(jìn)行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助2014-01-01js監(jiān)控IE火狐瀏覽器關(guān)閉、刷新、回退、前進(jìn)事件
本節(jié)主要介紹了js監(jiān)控IE火狐瀏覽器關(guān)閉、刷新、回退、前進(jìn)事件的方法2014-07-07uniapp開發(fā)小程序?qū)崿F(xiàn)滑動頁面控制元素的顯示和隱藏效果
這篇文章主要介紹了uniapp開發(fā)小程序?qū)崿F(xiàn)滑動頁面控制元素的顯示和隱藏效果,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12