js實(shí)現(xiàn)用戶離開(kāi)頁(yè)面前提示是否離開(kāi)此頁(yè)面的方法(包括瀏覽器按鈕事件)
本文實(shí)例講述了js實(shí)現(xiàn)用戶離開(kāi)頁(yè)面前提示是否離開(kāi)此頁(yè)面的方法(包括瀏覽器按鈕事件)。分享給大家供大家參考。具體如下:
用戶離開(kāi)頁(yè)面前,提示是否離開(kāi)此頁(yè)面(包括瀏覽器按鈕事件)
<script type="text/javascript"> window.onbeforeunload = function(){ return "您的文章尚未保存!"; } </script>
如果在退出頁(yè)面時(shí)需要彈出對(duì)話框,提示用戶將要退出頁(yè)面,類似當(dāng)設(shè)置某個(gè)功能時(shí)而沒(méi)有保存頁(yè)面。這個(gè)實(shí)現(xiàn)的方法比較簡(jiǎn)單,最常見(jiàn)的就是使用unload事件,但這種實(shí)現(xiàn)有一個(gè)缺點(diǎn),就是不管同意與否,結(jié)果還是一樣,會(huì)退出頁(yè)面,因此,如果要彈出對(duì)話框,就有用戶可選擇的空間,如果確定則退出,否則就不關(guān)閉頁(yè)面
這里推薦使用onbeforeunload()事件,意思就是在加載unload事件前執(zhí)行的方法,使用如下:
<script type="text/javascript"> window.onbeforeunload = function(){ return "必您確定要退出頁(yè)面嗎?"; } </script>
這樣就會(huì)彈出一個(gè)對(duì)話框,只有確認(rèn)將會(huì)退出頁(yè)面。
window.onbeforeunload可結(jié)合jQuery實(shí)現(xiàn)當(dāng)用戶設(shè)置頁(yè)面而沒(méi)有保存的提示效果,也就是如果已保存則不應(yīng)該提示出對(duì)話框,可使用如下方法,當(dāng)不需要
提示對(duì)話框:
<script type="text/javascript"> window.onbeforeunload = function(){ return; } </script>
這樣就會(huì)直接退出頁(yè)面,而不會(huì)彈出任何對(duì)話框。
結(jié)合jQuery實(shí)現(xiàn)Javascript退出頁(yè)面彈出對(duì)話框就是結(jié)合上面兩種方法,當(dāng)頁(yè)面滿足某種情況后,如果需要彈出對(duì)話框則彈出,否則不彈出對(duì)話框,這樣就非常的方便,jQuery有自身的unload方法,但同樣不能實(shí)現(xiàn)返回,只有一種結(jié)果,那就是退出頁(yè)面,因此,結(jié)合window.onbeforeunload 將能實(shí)現(xiàn)一個(gè)退出頁(yè)面彈出對(duì)話框的功能。
PS:這里再為大家提供一個(gè)關(guān)于JS事件的在線工具,歸納總結(jié)了JS常用的事件類型與函數(shù)功能:
javascript事件與功能說(shuō)明大全:
http://tools.jb51.net/table/javascript_event
希望本文所述對(duì)大家的javascript程序設(shè)計(jì)有所幫助。
- 離開(kāi)當(dāng)前頁(yè)面前使用js判斷條件提示是否要離開(kāi)頁(yè)面
- 離開(kāi)頁(yè)面時(shí)檢測(cè)表單元素是否被修改,提示保存的js代碼
- js 頁(yè)面關(guān)閉前的出現(xiàn)提示的實(shí)現(xiàn)代碼
- js 無(wú)提示關(guān)閉瀏覽器頁(yè)面的代碼
- JavaScript中通過(guò)提示框跳轉(zhuǎn)頁(yè)面的方法
- js實(shí)現(xiàn)的頁(yè)面加載完畢之前l(fā)oading提示效果完整示例【附demo源碼下載】
- JS實(shí)現(xiàn)定時(shí)頁(yè)面彈出類似QQ新聞的提示框
- 打開(kāi)新窗口關(guān)閉當(dāng)前頁(yè)面不彈出關(guān)閉提示js代碼
- JS實(shí)現(xiàn)刷新父頁(yè)面不彈出提示框的方法
- 基于JavaScript實(shí)現(xiàn)跳轉(zhuǎn)提示頁(yè)面
- JavaScript實(shí)現(xiàn)離開(kāi)頁(yè)面前提示功能【附j(luò)Query實(shí)現(xiàn)方法】
相關(guān)文章
JavaScript 2018 中即將迎來(lái)的新功能
JavaScript 2018 中即將迎來(lái)的新功能:異步生成器及更好的正則表達(dá)式。更多常規(guī)正則表達(dá)式功能大家跟隨小編一起通過(guò)本文學(xué)習(xí)吧2018-09-09支持多瀏覽器(IE、Firefox、Opera)剪切板復(fù)制函數(shù)_腳本之家修正版
有朋友要剪切板復(fù)制函數(shù),可網(wǎng)上的好多代碼都是不能運(yùn)行的,各種其它符號(hào),導(dǎo)致了腳本的不可運(yùn)行,腳本之家站長(zhǎng)特整理了下,修正了錯(cuò)誤。2008-12-12javascript插件開(kāi)發(fā)的一些感想和心得
這篇文章主要介紹了javascript插件開(kāi)發(fā)的一些感想和心得,需要的朋友可以參考下2016-02-02laypage+SpringMVC實(shí)現(xiàn)后端分頁(yè)
這篇文章主要為大家詳細(xì)介紹了laypage+SpringMVC實(shí)現(xiàn)后端分頁(yè),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-07-07動(dòng)態(tài)加載腳本提升javascript性能
動(dòng)態(tài)加載腳本可以有效提升javascript性能,下面有個(gè)不錯(cuò)的示例,大家可以參考下2014-02-02談?wù)凧avaScript類型系統(tǒng)之Math
Math 對(duì)象并不像 Date 和 String 那樣是對(duì)象的類,因此沒(méi)有構(gòu)造函數(shù) Math(),像 Math.sin() 這樣的函數(shù)只是函數(shù),不是某個(gè)對(duì)象的方法。您無(wú)需創(chuàng)建它,通過(guò)把 Math 作為對(duì)象使用就可以調(diào)用其所有屬性和方法2016-01-01左右懸浮可分組的網(wǎng)站QQ在線客服代碼(可謂經(jīng)典)
QQ在線客服在每一個(gè)web開(kāi)發(fā)人員的記憶里都是一個(gè)經(jīng)典,既然是經(jīng)典,也就是必不可少,那就應(yīng)該很好的呈現(xiàn)出來(lái),本文整理了一些左右懸浮可分組的網(wǎng)站QQ在線客服代碼,需要的朋友可以了解下2012-12-12微信小程序開(kāi)發(fā)之你可能沒(méi)有踩過(guò)的神坑總結(jié)
最近在做一個(gè)小程序的項(xiàng)目,所以記錄下開(kāi)發(fā)過(guò)程中遇到的坑,這篇文章主要給大家介紹了關(guān)于微信小程序開(kāi)發(fā)之你可能沒(méi)有踩過(guò)的神坑,需要的朋友可以參考下2021-09-09