亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

淺談javascript中onbeforeunload與onunload事件

2019-11-20 11:02:28
字體:
來源:轉載
供稿:網友

在最近的項目中,需要做到一個時間,就是用戶離開頁面的時候,我需要緩存頁面其中一部分的內容,但是我不需要用戶刷新的時候也緩存,我只希望在我用戶離開的時候

執行這個函數。百度之,有onbeforeunload與onunload這兩個事件,但是onbeforeunload在用戶刷新的時候也會執行。搞得我弄的挺久的,所以想在這里做一個小小的總結

onbeforeunload與onunload事件

onbeforeunload定義和用法

onbeforeunload 事件在即將離開當前頁面(刷新或關閉)時觸發。

該事件可用于彈出對話框,提示用戶是繼續瀏覽頁面還是離開當前頁面。

對話框默認的提示信息根據不同的瀏覽器有所不同,標準的信息類似 "確定要離開此頁嗎?"。該信息不能刪除。

但你可以自定義一些消息提示與標準信息一起顯示在對話框。

注意: 如果你沒有在 <body> 元素上指定 onbeforeunload 事件,則需要在 window 對象上添加事件,并使用 returnValue 屬性創建自定義信息(查看以下語法實例)。

注意: 在 Firefox 瀏覽器中,只顯示默認提醒信息(不顯示自定義信息)。

使用方法:

<!DOCTYPE html><html lang="en"><head>  <meta charset="UTF-8">  <title>test</title></head><body onbeforeunload="return test()">   </body><script type="text/javascript">  function test(){    return "你確定要離開嗎";  }</script></html>

或者:

<!DOCTYPE html><html lang="en"><head>  <meta charset="UTF-8">  <title>test</title></head><body>   </body><script type="text/javascript">window.onbeforeunload=function(){  return "你確定要離開嗎";} </script></html>

事件觸發的時候彈出一個有確定和取消的對話框,確定則離開頁面,取消則繼續待在本頁。當然你可以自定義提示文本。

那么,當我只需要在我離開時執行這個函數,而刷新的時候不執行,那怎么做呢?

window.onbeforeunload = function() {     var n = window.event.screenX - window.screenLeft;     var b = n > document.documentElement.scrollWidth - 20;     if (!(b && window.event.clientY < 0 || window.event.altKey)) {      //window.event.returnValue = "真的要刷新頁面么?";            //這里放置我想執行緩存的代碼      cacheFunction();          } }

 這樣,我離開頁面時,可以執行我的緩存代碼,而不彈出提示框,我刷新時也不彈出提示框,也不執行。值得一提的時,這個時候,要將ajax設置為同步,即:ajax里面的 async改為: false;

瀏覽器兼容情況

IE、Chrome、Safari 完美支持

Firefox 不支持文字提醒信息

Opera 不支持

IE6,IE7 使用 onbeforeunload 遇到的bug

2、onunload定義和用法

onunload 事件在用戶退出頁面時發生。

使用方法和onbeforeunload類似

window.onunload = function(){  return "你確定要離開嗎"} 

瀏覽器兼容情況

IE6,IE7,IE8 中 刷新頁面、關閉瀏覽器之后、頁面跳轉之后都會執行;

IE9 刷新頁面 會執行,頁面跳轉、關閉瀏覽器不能執行;

firefox(包括firefox3.6) 關閉標簽之后、頁面跳轉之后、刷新頁面之后能執行,但關閉瀏覽器不能執行;

Safari 刷新頁面、頁面跳轉之后會執行,但關閉瀏覽器不能執行;

Opera、Chrome 任何情況都不執行。

總結

       Onunload,onbeforeunload都是在刷新或關閉時調用,可以在<script>腳本中通過window.onunload來指定或者在<body>里指定。區別在于onbeforeunload在onunload之前執行,它還可以阻止onunload的執行。
  Onbeforeunload也是在頁面刷新或關閉時調用,Onbeforeunload是正要去服務器讀取新的頁面時調用,此時還沒開始讀取;而onunload則已經從服務器上讀到了需要加載的新的頁面,在即將替換掉當前頁面時調用。Onunload是無法阻止頁面的更新和關閉的。而 Onbeforeunload 可以做到。

頁面加載時只執行onload
頁面關閉時先執行onbeforeunload,最后onunload
頁面刷新時先執行onbeforeunload,然后onunload,最后onload。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产aaa精品| 日本精品久久电影| 久久久999精品视频| 欧美激情免费观看| 国产精品老女人视频| 欧美日韩国产成人在线| 久久成人av网站| 国产亚洲精品高潮| 精品国产精品自拍| 成人av番号网| 亚洲第一区第一页| 日韩美女视频在线观看| 亚洲大胆人体在线| 欧美激情视频一区二区三区不卡| 91性高湖久久久久久久久_久久99| 精品无人国产偷自产在线| 亚洲美女www午夜| 久久久久久亚洲精品| 日韩动漫免费观看电视剧高清| 国产精品成人久久久久| 中文字幕在线看视频国产欧美在线看完整| 欧美wwwwww| 欧美人成在线视频| 国产精品精品视频一区二区三区| 欧美与黑人午夜性猛交久久久| 国产精品美女久久久久久免费| 免费97视频在线精品国自产拍| 91精品中国老女人| 日韩免费在线免费观看| 国产精品wwwwww| 国产不卡在线观看| 久久人体大胆视频| 国产精品免费看久久久香蕉| 欧美精品精品精品精品免费| 久久久久久免费精品| 中文字幕精品一区久久久久| 91精品免费看| 亚洲色图日韩av| 一区二区三区日韩在线| 亚洲精品大尺度| 国产成人欧美在线观看| 久久久免费观看视频| 欧美日韩在线一区| 国产成人自拍视频在线观看| 欧美激情在线有限公司| 国产综合在线视频| 国内精品久久久久| 9.1国产丝袜在线观看| 国产女人18毛片水18精品| 浅井舞香一区二区| 亚洲精品乱码久久久久久按摩观| 午夜精品久久久久久久99热浪潮| 日本精品中文字幕| 亚洲精品小视频在线观看| 日韩av一卡二卡| 岛国av一区二区三区| 日韩精品福利在线| 国产成人精品视频在线观看| 色婷婷亚洲mv天堂mv在影片| 久久久久久成人| 欧美性猛交xxxxx免费看| 久久久国产精品亚洲一区| 日韩欧美综合在线视频| 国产成人a亚洲精品| 精品亚洲国产成av人片传媒| 亚洲国产一区自拍| 成人黄色免费看| 日韩精品在线影院| 中文字幕日韩欧美在线视频| 日韩精品免费在线视频观看| 亚洲三级免费看| 国产亚洲欧美日韩精品| 久久久噜噜噜久久久| 国产精品99一区| 欧美日韩亚洲91| 性欧美长视频免费观看不卡| 欧美国产视频日韩| 日韩高清电影好看的电视剧电影| 日韩精品有码在线观看| 亚洲色图偷窥自拍| 成人免费视频xnxx.com| 欧美日韩一区免费| xvideos成人免费中文版| 91丝袜美腿美女视频网站| 久久久久久国产精品| 精品视频中文字幕| 国产精品久久久久久久久影视| 国产综合色香蕉精品| 久久精品视频导航| 国产xxx69麻豆国语对白| 爽爽爽爽爽爽爽成人免费观看| 久久免费少妇高潮久久精品99| 成人精品久久av网站| 91性高湖久久久久久久久_久久99| 日韩免费看的电影电视剧大全| 成人免费看吃奶视频网站| 亚洲国产欧美久久| 久久久999精品| 日韩中文字幕不卡视频| 欧美激情xxxxx| 日韩激情视频在线| 国产日韩欧美在线观看| 777国产偷窥盗摄精品视频| 亚洲欧美www| 91在线网站视频| 亚洲人成毛片在线播放| 欧美性猛交xxxx乱大交| 欧美激情国内偷拍| 91在线国产电影| 美女精品视频一区| 国产精品久久久久久久久免费| 国产日韩在线一区| 国产精品影院在线观看| 91精品视频免费看| 亚洲精品www久久久久久广东| 亚洲自拍欧美另类| 日韩av免费网站| 日韩精品视频在线观看免费| 欧美国产日韩精品| 亚洲第一区在线| 亚洲成人aaa| 国产97在线|亚洲| 精品女同一区二区三区在线播放| 国产一区二区久久精品| 亚洲**2019国产| 中文字幕综合在线| 最近更新的2019中文字幕| 欧美在线视频免费观看| 亚洲欧美日韩精品久久奇米色影视| 亚洲尤物视频网| 日韩精品免费视频| 欧美高清激情视频| 日韩在线观看免费高清| 亚洲小视频在线观看| 免费91在线视频| 日本久久久久亚洲中字幕| 97成人精品区在线播放| 久久久人成影片一区二区三区观看| 久久精品99久久久久久久久| 色老头一区二区三区在线观看| 日韩在线激情视频| 欧美性xxxxx| 欧美日本啪啪无遮挡网站| 日韩一区二区精品视频| 久久久国产91| 超碰精品一区二区三区乱码| 欧美精品久久久久久久久| 91久久久久久| 成人黄色中文字幕| 91精品国产91久久久久| 亚洲欧美日韩中文视频| 久久久久国产精品www| 国产精品久久久久久久av大片| 97视频在线观看免费高清完整版在线观看| 日韩精品免费在线视频观看| 成人免费视频xnxx.com| 青青草精品毛片| 神马久久久久久| 亚洲片在线资源| www.日韩免费| 92版电视剧仙鹤神针在线观看| 高清一区二区三区四区五区| 日韩中文综合网| 九九精品在线播放|