成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

JS基礎(chǔ)篇--JS之onunload、onbeforeunload事件詳解

rollback / 2032人閱讀

摘要:事件事件在用戶退出頁面時(shí)發(fā)生。注意事件同樣觸發(fā)了頁面載入事件事件。如圖所示大體一句話描述和支持事件但是或者不支持該事件。瀏覽器兼容情況完美支持不支持文字提醒信息不支持如圖所示使用遇到的凡是標(biāo)簽都會(huì)觸發(fā)事件包括這種。

簡(jiǎn)介

onunload,onbeforeunload都是在刷新或關(guān)閉時(shí)調(diào)用,可以在

大體一句話描述:IE, Firefox, 和 Safari 支持 onunload 事件, 但是 Chrome 或者 Opera 不支持該事件。

onbeforeunload事件

onbeforeunload 事件在即將離開當(dāng)前頁面(刷新或關(guān)閉)時(shí)觸發(fā)。

該事件可用于彈出對(duì)話框,提示用戶是繼續(xù)瀏覽頁面還是離開當(dāng)前頁面。

對(duì)話框默認(rèn)的提示信息根據(jù)不同的瀏覽器有所不同,標(biāo)準(zhǔn)的信息類似 "確定要離開此頁嗎?"。該信息不能刪除。

但你可以自定義一些消息提示與標(biāo)準(zhǔn)信息一起顯示在對(duì)話框。

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

語法

html中使用:

JavaScript 中:

object.onbeforeunload=function(){myScript};

JavaScript 中, 使用 addEventListener() 方法:

object.addEventListener("beforeunload", myScript);

注意: Internet Explorer 8 及更早 IE 版本不支持 addEventListener() 方法。

JS中使用例子寫法一:

//JS document
window.onbeforeunload = function(){
return "onbeforeunload is work";
}

return 的值 為你需要告訴用戶的提示信息如上面demo的話瀏覽器的提示是這樣(firefox ,Chrome并不支持文字提醒)。

JS中使用例子寫法二:

window.onbeforeunload = function(event) {
    event.returnValue = "我在這寫點(diǎn)東西...";
};

值得注意的是,網(wǎng)上流傳說 可以通過檢查 e.clientX e.clientY 判斷 用戶是否點(diǎn)擊 右上角關(guān)閉瀏覽器的,但是實(shí)踐發(fā)現(xiàn) 只有 IE6,IE7,IE8 能獲取得到具體數(shù)值,其他瀏覽器均為 undefined。

瀏覽器兼容情況

IE、Safari 完美支持

Firefox、Chrome 不支持文字提醒信息

Opera 不支持

如圖所示:

IE6,IE7 使用 onbeforeunload 遇到的bug

凡是 標(biāo)簽 都會(huì)觸發(fā) onbeforeunload事件 包括 href=”javascript:void(0)” 這種。

在IE6,IE7 下面 點(diǎn)擊 里面的 a 標(biāo)簽,蛋疼的事情就發(fā)生了。

解決方法:給這 a標(biāo)簽的 父級(jí) 添加 onclick=function(){return false} 即可,不過添加了這個(gè)之后 要確保 父級(jí)里面沒有 input type=”checkbox” 的標(biāo)簽,否則會(huì)導(dǎo)致其無效不可點(diǎn)擊。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/89507.html

相關(guān)文章

  • 監(jiān)聽瀏覽器刷新及關(guān)閉

    摘要:解決思路對(duì)于瀏覽器的關(guān)閉和刷新會(huì)觸發(fā)兩個(gè)事件和,問題在于如何區(qū)分用戶是想刷新還是退出此時(shí)應(yīng)該將用戶催眠,然后獲得用戶的思想,預(yù)判用戶走位及操作。。。事件是無法阻止頁面關(guān)閉的。 需求背景: 為保證‘高度安全性’,用戶每次退出頁面或?yàn)g覽器都要清除登陸信息,每次進(jìn)入系統(tǒng)都要重新登陸(每次登陸還要手機(jī)驗(yàn)證碼等亂七八糟的驗(yàn)證信息,,,求用戶的心里陰影面積),但是刷新頁面不可以清除登陸信息。解決思...

    AWang 評(píng)論0 收藏0
  • Dom中高big 事件總結(jié)(持續(xù)更新中)

    摘要:三事件事件在即將離開當(dāng)前頁面刷新或關(guān)閉時(shí)觸發(fā)。四事件事件在用戶退出頁面時(shí)發(fā)生。五事件該事件在存儲(chǔ)更新時(shí)觸發(fā)六事件該事件在窗口的瀏覽歷史對(duì)象發(fā)生改變時(shí)觸發(fā)七事件事件在用戶中止加載或元素時(shí)觸發(fā)。 將前段時(shí)間自己用到的,比較少見,但是功能很強(qiáng)大的事件在這里總結(jié)下,一來自己重新梳理歸檔下,二來,沒用過的同學(xué)也可以嘗試用下。其實(shí),這些都是基礎(chǔ)知識(shí),但是基礎(chǔ)是最重要的。還記得老師說過:基礎(chǔ)不牢,地...

    mzlogin 評(píng)論0 收藏0
  • JS魔法堂:定義頁面的Dispose方法——[before]unload事件啟示錄

    摘要:坑無視和是十分特殊的事件,要求事件處理函數(shù)內(nèi)部不能阻塞當(dāng)前線程,而卻恰恰就會(huì)阻塞當(dāng)前線程,因此規(guī)范中以明確在和中直接無視這幾個(gè)方法的調(diào)用。 前言 ?最近實(shí)施的同事報(bào)障,說用戶審批流程后直接關(guān)閉瀏覽器,操作十余次后系統(tǒng)就報(bào)用戶會(huì)話數(shù)超過上限,咨詢4A同事后得知登陸后需要顯式調(diào)用登出API才能清理4A端,否則必然會(huì)超出會(huì)話上限。?即使在頁面上增添一個(gè)登出按鈕也無法保證用戶不會(huì)直接關(guān)掉瀏覽器...

    Chiclaim 評(píng)論0 收藏0
  • 頁面生命周期:DOMContentLoaded, load, beforeunload, unloa

    摘要:所以有可能在所有腳本執(zhí)行完畢后觸發(fā)。如果用戶即將離開頁面或者關(guān)閉窗口時(shí),事件將會(huì)被觸發(fā)以進(jìn)行額外的確認(rèn)。狀態(tài)表示事件即將被觸發(fā)??偨Y(jié)頁面事件的生命周期事件在樹構(gòu)建完畢后被觸發(fā),我們可以在這個(gè)階段使用去訪問元素。 頁面生命周期:DOMContentLoaded, load, beforeunload, unload 原文地址:http://javascript.info/onload.....

    lx1036 評(píng)論0 收藏0
  • 頁面生命周期:DOMContentLoaded, load, beforeunload, unloa

    摘要:所以有可能在所有腳本執(zhí)行完畢后觸發(fā)。如果用戶即將離開頁面或者關(guān)閉窗口時(shí),事件將會(huì)被觸發(fā)以進(jìn)行額外的確認(rèn)。狀態(tài)表示事件即將被觸發(fā)。總結(jié)頁面事件的生命周期事件在樹構(gòu)建完畢后被觸發(fā),我們可以在這個(gè)階段使用去訪問元素。 頁面生命周期:DOMContentLoaded, load, beforeunload, unload 原文地址:http://javascript.info/onload.....

    luckyyulin 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<