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”

JS监听页面关闭的更多相关文章

  1. js监听页面放大缩小

    <!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>d ...

  2. js监听页面是否在浏览器当前页面

    在最近的一个socket项目中,需要监听客户端是否已读客服端发送的消息. 这里用到了html5中document新增了一个事件 visibilitychange,这个事件在页面前台或后台切换时被触发, ...

  3. js监听浏览器,关闭,刷新

    //浏览器关闭或刷新事件 function bindCloseBrowser() { var a = "注意!!\n您即将离开页面!离开后可能会导致数据丢失\n\n您确定要离开吗?" ...

  4. js监听浏览器关闭事件

    html : <HTML>  <HEAD>  <title>test</title>  </HEAD>  <body onbefore ...

  5. JS监听页面滚动到底部事件

    废话不说,直接上代码,放心我这个是最好的,直接放到js脚本里,直接生效: $(window).scroll(function(){ var scrollTop = $(this).scrollTop( ...

  6. js 监听页面url锚点变化 window.onpopstate

    window.onpopstate = function (event) { if (location.href.indexOf('#') == -1) { location.reload(); } ...

  7. js监听页面copy事件添加版权信息

    个人博客 地址:http://www.wenhaofan.com/article/20180921103346 1.介绍 当页面需要做版权保护时,比如当用户copy我们网站的文章时,我们会希望在他co ...

  8. JS监听页面----无鼠标键盘动作,自动跳页

    function ScreenSaver(settings){ this.settings = settings; this.nTimeout = this.settings.timeout; doc ...

  9. js监听页面标签切换

    var OriginTitile = document.title, titleTime; document.addEventListener('visibilitychange', function ...

随机推荐

  1. three.js 源代码凝视(十六)Math/Frustum.js

    商域无疆 (http://blog.csdn.net/omni360/) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:商域无疆 -  本博客专注于 敏捷开发 ...

  2. CQRS架构

    CQRS架构 命令查询的责任分离Command Query Responsibility Segregation (简称CQRS)模式是一种架构体系模式,能够使改变模型的状态的命令和模型状态的查询实现 ...

  3. Ubuntu 14.04 字体设置

    ubuntu 14.04消息公布后,我迫不及待地安装和使用.不知道怎么搞的,整个系统彻底改变了字体.有罪,看. 后来.听说文泉驿米黑效果不错.就试了一下,确实还行. 以下是设置方法: 1.安装文泉驿米 ...

  4. mvc日期控件datepick的几篇文章,日后再总结吧

    instinctcoder里有两篇,入门级的 http://instinctcoder.com/asp-net-mvc-4-jquery-datepicker/ http://instinctcode ...

  5. Nutch搜索引擎Solr简介及安装

    Nutch搜索引擎(第2期)_ Solr简介及安装   1.Solr简介 Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器.同时对其进行了扩展,提供了比Lucene更为丰富的 ...

  6. 由于检索用户的本地应用程序数据路径时出错,导致无法生成 SQL Server 的用户实例

    /”应用程序中的服务器错误. 由于检索用户的本地应用程序数据路径时出错,导致无法生成 SQL Server 的用户实例.请确保该用户在此计算机上有本地用户配置文件.该连接将关闭. 堆栈跟踪: [Sql ...

  7. Real-Rime Rendering (1) - 渲染管线(Rendering Pipeline)

    提要 渲染管线是实时渲染中最重要的部分,它的最主要的任务就是在给定一个虚拟的场景,包括相机,object,灯光,纹理等等,生成一副2D的图像. 最基础的渲染管线如下图所示: 主要的阶段包括三个:App ...

  8. 写JQuery 插件

    什么?你还不会写JQuery 插件 前言 如今做web开发,jquery 几乎是必不可少的,就连vs神器在2010版本开始将Jquery 及ui 内置web项目里了.至于使用jquery好处这里就不再 ...

  9. [转]SHSH, APTicket以及iOS降級

    来源:http://disp.cc/b/522-4v3W 最近有一場Jailbreak的conference,叫做WWJC 裡面請到很多駭客來講解越獄相關知識 包括p0sixninja, iH8sn0 ...

  10. VS调试技巧与快捷键&&VS快捷键

    VS调试技巧与调试快捷键 1.添加断点或取消断点:F9(或者点击代码行最左边的灰色行)   2.调试:F10逐过程(不进入函数内部,直接获取函数运行结果)  F11逐语句(会进入函数),如果想跳出函数 ...