专栏首页前端儿JS监听页面关闭

JS监听页面关闭

JS可以监听浏览器页面的关闭,主要使用了window对象的onbeforeunload方法

在以前(旧版本的浏览器中),可以自定义提示文案

window.onbeforeunload = function (e) {
    var message = 'some word';
    e = e || window.event;

    if (e) {
        e.returnValue = message;
    }

    return message;
};

但在新版本的浏览器中,为了安全性,已经不支持自定义弹窗

诸如自定义实现“用户离开页面,弹窗自定义提示是否离开,点击取消不离开,点击确认离开后离开页面”的需求已无法实现

能做的,只是调用浏览器自带的提示确认窗格

        window.onbeforeunload = function(e) {
                console.log('beforeunload')
                return 1;
            };

目前来说,只能这样控制是否显示系统的页面离开确认。

要注意的是,只有以下情况不会弹出确认窗格

  • 不return
  • return;
  • return undefined;
  • return null;

而返回其他任意值都会弹出,如

  • return '';
  • return false;
  • return 0;
  • return 1; 等等

在Chrome中

在FireFox中

在IE中

可以看到,在IE中还支持显示离开的提示信息“hh”

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 一种排序

    现在有很多长方形,每一个长方形都有一个编号,这个编号可以重复;还知道这个长方形的宽和长,编号、长、宽都是整数;现在要求按照一下方式排序(默认排序规则都是从小到大...

    书童小二
  • Fibonacci数

    无穷数列1,1,2,3,5,8,13,21,34,55...称为Fibonacci数列,它可以递归地定义为 F(n)=1 ...........(n=1或n=2...

    书童小二
  • 数数

    我们平时数数都是喜欢从左向右数的,但是我们的小白同学最近听说德国人数数和我们有些不同,他们正好和我们相反,是从右向左数的。因此当他看到123时会说“321”。

    书童小二
  • return的值都去哪了?去哪了,“谁伸手了,return的结果就给谁”

    事情是这样,今天的前端零基础课在讲购物车模块,其中的全部商品中的被选中商品的总数和价格,是先要获得所有被选中的单项商品数量和单价,然后发送给接口进行计算的。这其...

    web前端教室
  • pyfolio教程2——第一个returns_tear_sheet

            首先,说明一下我们的数据,为了一步一步的明确pyfolio的功能和一些结果,我们首先选取我们的策略是0.3的中证500指数、0.3的中证1000...

    钱塘小甲子
  • Python finally的用法

    try语句有一个可选finally子句,用于定义在所有情况下都必须执行的finally操作

    于小勇
  • go笔记:go语言继承和简易工厂

    超级大猪
  • developer express右键菜单显示汉化

    跟着阿笨一起玩NET
  • Pytest常用插件之HTML报告(十二)

    在Pytest的测试框架中,有很丰富的插件,还是接着之前的案例继续延伸来说这部分,今天主要介绍基于Pytest测试框架的测试报告部分,其实在Pyte...

    无涯WuYa
  • LintCode-111.爬楼梯

    假设你正在爬楼梯,需要n步你才能到达顶部。但每次你只能爬一步或者两步,你能有多少种不同的方法爬到楼顶部?

    悠扬前奏

扫码关注云+社区

领取腾讯云代金券