beforeunload事件在当页⾯卸载(关闭)或刷新时调⽤,事件触发的时候弹出⼀个有确定和取消的对话框,确定则离开页⾯,取消则继续待在本页; jquery离开页⾯弹出提⽰代码
//绑定beforeunload事件
$(window).bind('beforeunload',function(){
return '您输⼊的内容尚未保存,确定离开此页⾯吗?'; });
//解除绑定,⼀般放在提交触发事件中
$(window).unbind('beforeunload');
js离开页⾯提⽰ onbeforeunload事件⽅法
kumoolreturn confirm("确定退出吗");
}
以下操作触发beforeunload,onbeforeunload
椅子上有坐下去1 ·关闭浏览器窗⼝
2·通过地址栏或收藏夹前往其他页⾯的时候
3·点击返回,前进,刷新,主页其中⼀个的时候
4·点击⼀个前往其他页⾯的url连接的时候
5·调⽤以下任意⼀个事件的时候:click,document.write()⽅法(输出内容),document.open() 打开⼀个新的空⽩⽂档,document.close()⽅法可关闭⼀个由open()⽅法打开的输出流,并显⽰选定的数据。
,window close (),form.submit.
6·当⽤window open打开⼀个页⾯,并把本页的window的名字传给要打开的页⾯的时候。
7·重新赋予location.href的值的时候。
8·通过input type=”submit”按钮提交⼀个具有指定action的表单的时候。
9.可以⽤在以下元素:body, frameset, window
// 关闭窗⼝时弹出确认提⽰
$(window).bind('beforeunload', function(){
// 只有在标识变量is_confirm不为false时,才弹出确认提⽰
if(window.is_confirm !== false){
return '您可能有数据没有保存';
}
kawd-445});
// 提交表单时,不弹出确认提⽰框
$('form').bind('submit', function(){
is_confirm = true;
});
//页⾯内的跳转操作均不弹出确认窗⼝
$(window).bind('mouseover mouseleave', function(event){
is_confirm = pe == 'mouseleave';
});
(function(){
// 关闭窗⼝时弹出确认提⽰
$(window).bind('beforeunload', function(){
// 只有在标识变量is_confirm不为false时,才弹出确认提⽰
if(window.is_confirm !== false)
return '您可能有数据没有保存';
})
// mouseleave mouseover事件也可以注册在body、外层容器等元素上
.bind('mouseover mouseleave', function(event){
is_confirm = pe == 'mouseleave';
});
})();
<script type="text/javascript">
var changeFlag=false;cp780
//标识⽂本框值是否改变,为true,标识已变
socl
$(document).ready(function(){
//⽂本框值改变即触发
$("input[type='text']").change(function(){
changeFlag=true;
一次性台布});
//⽂本域改变即触发
$("textarea").change(function(){
changeFlag=true;
});
});
//离开页⾯时保存⽂档
if(changeFlag ==true){
//如果changeFlag的值为true则提⽰
if(confirm("页⾯值已经修改,是否要保存?")){ //处理信息保存...
alert("即将执⾏保存操作...");
}else{
//不保存数据...
alert("不保存信息...");
}
}