javascript - js窗口逃生效果求教
本文介绍了javascript - js窗口逃生效果求教的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
要做一个后台,编辑文章的功能,产品要求,当用户点开编辑窗口进行修改并没有保存时,点击编辑窗口以外的任何地方,阻止默认事件,弹窗令用户选择是否保存后再执行默认事件。
想来想去没有很好的解决办法,求一个思路.
问题主要在于不是关闭浏览器触发弹框,而是点击页面上的非编辑窗口部分时都要触发,而这些部分里有各种绑定事件、链接之类的。
解决方案
原本的想法是能不能通过给编辑窗口添加失焦事件,弹出自定义confirm,根据confirm的选择判断是否执行默认事件,结果还是放弃了…
最后只能给每个链接和事件添加判断方法,传入默认执行函数作为回调参数
类似这样
<a href="index.php">首页</a>
改为
<div id="myconfirm">
<p>确认离开?</p>
<button id="yes">是</button><button id="no">否</button>
</div>
<a href="javascript:void(0)">首页</a>
<script>
$('a').click(function(){
myconfirm(function(){
window.location.href="index.php";
},function(){
return false;
});
});
function myconfirm(fun_yes,fun_no){
$('#yes').unbind();
$('#no').unbind();
$('#yes').click(function(){
fun_yes();
});
$('#no').click(function(){
fun_no();
});
$('#myconfirm').show();
}
</script>
这篇关于javascript - js窗口逃生效果求教的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文