window屬性onbeforeunload語法教程示例
onbeforeunload屬性
WindowEventHandlers.onbeforeunload事件處理程序?qū)傩园诎l(fā)送beforeunload時(shí)執(zhí)行的代碼。這個(gè)事件在窗口即將到達(dá)unload(卸載)其資源時(shí)觸發(fā)。該文件仍然可見,并且該事件仍可取消。
注意:為了防止不需要的彈出窗口,一些瀏覽器不會顯示在beforeunload事件處理程序中創(chuàng)建的提示,除非該頁面已與之交互;有些根本不顯示它們。
onbeforeunload屬性語法
window.onbeforeunload = funcRef
- funcRef是對函數(shù)或函數(shù)表達(dá)式的引用。
- 該函數(shù)應(yīng)該為Event對象的returnValue屬性分配一個(gè)字符串值并返回相同的字符串。
onbeforeunload屬性示例
window.onbeforeunload = function(e) { var dialogText = 'Dialog text here'; e.returnValue = dialogText; return dialogText; };
筆記
當(dāng)此事件返回(或?qū)eturnValue屬性設(shè)置為)除null或者undefined之外的值時(shí),系統(tǒng)將提示用戶確認(rèn)頁面卸載。在某些瀏覽器中,事件的返回值顯示在此對話框中。從Firefox 4,Chrome 51,Opera 38和Safari 9.1開始,將顯示一個(gè)不受網(wǎng)頁控制的通用字符串,而不是返回的字符串。
例如:
- Firefox顯示字符串“此頁面要求您確認(rèn)您要離開 - 您輸入的數(shù)據(jù)可能無法保存。”
- Chrome會顯示字符串“您想離開本網(wǎng)站嗎?您所做的更改可能無法保存”;
- Internet Explorer不尊重null返回值,并將其作為“null”文本顯示給用戶。您必須使用undefined跳過提示。
自2011年5月25日,調(diào)用到HTML5規(guī)范狀態(tài)的window.alert(),window.confirm()和window.prompt()方法可以在此事件中被忽略。
另請注意,各種瀏覽器忽略事件的結(jié)果,并且根本不要求用戶進(jìn)行確認(rèn)。該文件將始終自動卸載。Firefox在about:config中有一個(gè)名為dom.disable_beforeunload的開關(guān)來啟用此行為。
你可以并且應(yīng)該通過window.addEventListener()和beforeunload事件來處理此事件。
綁定到此事件可用于防止瀏覽器在JavaScript呈現(xiàn)內(nèi)容的情況下完全緩存頁面。在某些情況下,當(dāng)為了填充內(nèi)容而返回到已執(zhí)行javascript的頁面時(shí),您可能會發(fā)現(xiàn)返回時(shí)返回訪問時(shí)JavaScript沒有運(yùn)行。如果window.onbeforeunload已被綁定(并因此在離開該頁面時(shí)觸發(fā)),則頁面中的javascript將在隨后的回訪中被觸發(fā)并因此更新內(nèi)容。
規(guī)范
該事件最初由Microsoft在Internet Explorer 4中引入,并在HTML5規(guī)范中進(jìn)行了標(biāo)準(zhǔn)化。
規(guī)范 | 狀態(tài) | 注釋 |
---|---|---|
HTML Living Standard 該規(guī)范中的'GlobalEventHandlers'的定義。 | Living Standard | |
HTML 5.1 該規(guī)范中的'GlobalEventHandlers'的定義。 | Recommendation | |
HTML5 該規(guī)范中的'GlobalEventHandlers'的定義。 | Recommendation |
瀏覽器兼容性
希望能夠有所幫助~
以上就是window屬性onbeforeunload語法教程示例的詳細(xì)內(nèi)容,更多關(guān)于window屬性onbeforeunload語法的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
微信小程序 獲取設(shè)備信息 API實(shí)例詳解
這篇文章主要介紹了微信小程序 獲取設(shè)備信息 API實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2016-10-10PHP:微信小程序 微信支付服務(wù)端集成實(shí)例詳解及源碼下載
這篇文章主要介紹了微信小程序 微信支付服務(wù)端集成實(shí)例詳解及源碼下載的相關(guān)資料,需要的朋友可以參考下2017-01-01微信小程序中頁面FOR循環(huán)和嵌套循環(huán)
這篇文章主要介紹了微信小程序中頁面FOR循環(huán)和嵌套循環(huán)的相關(guān)資料,需要的朋友可以參考下2017-06-06axios?攔截器管理類鏈?zhǔn)秸{(diào)用手寫實(shí)現(xiàn)及原理剖析
這篇文章主要為大家介紹了axios?攔截器管理類鏈?zhǔn)秸{(diào)用手寫實(shí)現(xiàn)及原理剖析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08JavaScript實(shí)現(xiàn)一鍵復(fù)制內(nèi)容剪貼板
這篇文章主要為大家介紹了JavaScript實(shí)現(xiàn)一鍵復(fù)制內(nèi)容,document.execCommand原生JS設(shè)置剪貼板的實(shí)現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07Flask中獲取小程序Request數(shù)據(jù)的兩種方法
這篇文章主要介紹了Flask中獲取小程序Request數(shù)據(jù)的兩種方法的相關(guān)資料,需要的朋友可以參考下2017-05-05