在頁(yè)面離開前提醒你的 beforeunload 事件

beforeunload 事件在當(dāng)頁(yè)面卸載(關(guān)閉)或刷新時(shí)調(diào)用,事件觸發(fā)的時(shí)候彈出一個(gè)有確定和取消的對(duì)話框,確定則離開頁(yè)面,取消則繼續(xù)待在本頁(yè)。handler可以設(shè)一個(gè)返回值作為該對(duì)話框的顯示文本。

以下操作會(huì)觸發(fā) beforeunload 事件:

·關(guān)閉瀏覽器窗口
  ·通過地址欄或收藏夾前往其他頁(yè)面的時(shí)候
  ·點(diǎn)擊返回,前進(jìn),刷新,主頁(yè)其中一個(gè)的時(shí)候
  ·點(diǎn)擊 一個(gè)前往其他頁(yè)面的url連接的時(shí)候
  ·調(diào)用以下任意一個(gè)事件的時(shí)候:click,document write,document open,document close,window close ,window navigate ,window NavigateAndFind , location replace , location reload , form submit.
  ·當(dāng)用window open打開一個(gè)頁(yè)面,并把本頁(yè)的window的名字傳給要打開的頁(yè)面的時(shí)候。
  ·重新賦予location.href的值的時(shí)候。
  ·通過input type=”submit”按鈕提交一個(gè)具有指定action的表單的時(shí)候。

例如:

window.addEventListener('beforeunload', function(event) {
      document.getElementById('keyword').value = '';
});

在這個(gè)例子中,我們?yōu)?window 對(duì)象添加了一個(gè) beforeunload 事件監(jiān)聽器。當(dāng)用戶嘗試離開頁(yè)面時(shí),會(huì)觸發(fā)這個(gè)事件,并可以通過設(shè)置 event.returnValue 來顯示一個(gè)確認(rèn)對(duì)話框,讓用戶選擇是否真的要離開頁(yè)面。document.getElementById 用于獲取頁(yè)面上具有指定 id 的元素。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 本節(jié)介紹各種常見的瀏覽器事件。 鼠標(biāo)事件 鼠標(biāo)事件指與鼠標(biāo)相關(guān)的事件,主要有以下一些。 click 事件,dblc...
    許先生__閱讀 2,840評(píng)論 0 4
  • 事件處理客戶端js程序采用異步事件驅(qū)動(dòng)編程模型。在這種情況下當(dāng)文檔,瀏覽器,元素發(fā)生一些事情的時(shí)候,會(huì)產(chǎn)生事件。 ...
    小小小8021閱讀 498評(píng)論 0 0
  • 以下內(nèi)容是在谷歌瀏覽器測(cè)試,總結(jié)的。 頁(yè)面加載 事件順序: readystatechange --- DOMCon...
    別熬夜了_ec3d閱讀 800評(píng)論 0 0
  • ??JavaScript 與 HTML 之間的交互是通過事件實(shí)現(xiàn)的。 ??事件,就是文檔或?yàn)g覽器窗口中發(fā)生的一些特...
    霜天曉閱讀 3,696評(píng)論 1 11
  • 之前寫過一篇瀏覽器事件的相關(guān)操作和事件運(yùn)行的原理——JavaScript瀏覽器事件解析。這一篇主要寫一些常用的事件...
    faremax閱讀 1,724評(píng)論 0 0

友情鏈接更多精彩內(nèi)容