如何显示“您确定要离开页面吗?” 当用户实际上试图关闭页面(单击浏览器窗口或选项卡上的X按钮)时,而不是当用户试图离开页面导航(单击另一个链接)时。
我的客户希望用户尝试关闭页面时显示一条消息“您确定要离开页面吗?您的购物车中仍然有商品。”
不幸的是$(window).bind('beforeunload'),仅当用户关闭页面时才会触发。
$(window).bind('beforeunload')
jQuery的:
function checkCart() { $.ajax({ url : 'index.php?route=module/cart/check', type : 'POST', dataType : 'json', success : function (result) { if (result) { $(window).bind('beforeunload', function(){ return 'leave?'; }); } } }) }
您可以使用 JQuery 做到这一点。
对于 例如 ,
<a href="your URL" id="navigate"> click here </a>
你JQuery会的
JQuery
$(document).ready(function(){ $('a').on('mousedown', stopNavigate); $('a').on('mouseleave', function () { $(window).on('beforeunload', function(){ return 'Are you sure you want to leave?'; }); }); }); function stopNavigate(){ $(window).off('beforeunload'); }
为了获得“ 离开消息”警报 ,
$(window).on('beforeunload', function(){ return 'Are you sure you want to leave?'; }); $(window).on('unload', function(){ logout(); });
该解决方案适用于所有浏览器,并且已经过测试。