我正在尝试实现一个基本的弹出窗口,该窗口询问用户是否真的要离开该页面,类似于如果我尝试在编写此消息的一半时关闭该窗口,则会在该站点上发生什么.
我意识到这是一个普遍不赞成的事情,但是我有充分的理由要这样做.
我通过使用以下代码使其工作:
function confirm_exit(e) {
if(!e) e = window.event;
e.cancelBubble = true;
e.returnValue = 'Are you sure you want to leave?';
if (e.stopPropagation) {
e.stopPropagation();
e.preventDefault();
}
}
但是,我真正想做的是在他们离开页面时显示消息,除非他们通过单击两个链接之一离开.
(我刚刚意识到这听起来像是我可能想强迫他们点击广告或其他东西!)
使用此功能的原因是在预订过程的最后,用户可以在确认之前确认预订或添加其他预订. (这是我不希望显示弹出消息的两种可能性,弹出消息中只会显示类似“您的预订尚未确认,您确定要离开吗?”之类的信息.).
反正有实现这一目标的方法吗?
任何建议表示赞赏.
谢谢.
解决方法:
在头:
<head>
...
<script type="text/javascript">
var disabledConfirm_exit=false;
</script>
</head>
在允许离开的两个链接中,您可以添加
onclick="disabledConfirm_exit=true;"
在confirm_exit里面
function confirm_exit(e) {
if(disabledConfirm_exit) return;
if(!e) e = window.event;
e.cancelBubble = true;
e.returnValue = 'Are you sure you want to leave?';
if (e.stopPropagation) {
e.stopPropagation();
e.preventDefault();
}
}