当前位置: 首页 > 面试题库 >

关闭(不离开)页面时的jQuery beforeunload?

洪通
2023-03-14
问题内容

如何显示“您确定要离开页面吗?” 当用户实际上试图关闭页面(单击浏览器窗口或选项卡上的X按钮)时,而不是当用户试图离开页面导航(单击另一个链接)时。

我的客户希望用户尝试关闭页面时显示一条消息“您确定要离开页面吗?您的购物车中仍然有商品。”

不幸的是$(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会的

$(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();

});

该解决方案适用于所有浏览器,并且已经过测试。



 类似资料:
  • 如何显示“您确定要离开页面吗?”当用户实际尝试关闭页面时(单击浏览器窗口或选项卡上的X按钮),而不是当用户尝试离开页面时(单击其他链接)。 我的客户希望在用户尝试关闭页面时显示一条消息:“您确定要离开页面吗?您的购物车中仍有商品。” 不幸的是不会仅在用户关闭页面时触发。 jQuery:

  • mui框架将窗口关闭功能封装在mui.back方法中,具体执行逻辑是: 若当前webview为预加载页面,则hide当前webview; 否则,close当前webview; 在mui框架中,有三种操作会触发页面关闭(执行mui.back方法): 点击包含.mui-action-back类的控件 在屏幕内,向右快速滑动 Android手机按下back按键 iOS平台原生支持从屏幕边缘右滑关闭 iO

  • 本文向大家介绍如何实现chrome浏览器关闭页面时弹出“确定要离开此面吗?”,包括了如何实现chrome浏览器关闭页面时弹出“确定要离开此面吗?”的使用技巧和注意事项,需要的朋友参考一下 一、避免弹出提示框 在网上搜了很多,答案大都是设置window.onbeforeunload=null ,但是试用之后无效。 这个问题放了两天之后返回来再次想,终于找到了答案,在此和大家分享一下: 解除jquer

  • 本文向大家介绍js实现关闭网页出现是否离开提示,包括了js实现关闭网页出现是否离开提示的使用技巧和注意事项,需要的朋友参考一下 大家是否经常遇到在关闭网页的时候,会看到一个确定是否离开当前页面的提示框?想一些在线测试系统、信息录入系统等就经常会有这一些提示,避免用户有意或者无意中关掉了页面,导致数据丢失。这里面的实现过程很简单,利用了HTML DOM事件中的onunload和onbeforeunl

  • H5页面在微信里面打开,H5页面播放视频时,关闭页面在IOS设备, visibilitychange, pagehide都监听不到? 这种要怎么调整?

  • ap.popWindow(OPTION | data) 关闭当前页面。可直接传入一个对象作为 OPTION.data 参数。 OPTION 参数说明 参数 类型 必填 描述 data Object 否 传递的 data 对象将会被即将露出的页面通过 onResume 事件接收 代码示例 <script src="https://gw.alipayobjects.com/as/g/h5-lib/al