`
落地窗
  • 浏览: 429281 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

监听浏览器关闭按钮点击事件 -- 使用JS

阅读更多
Onunload,onbeforeunload都是在刷新或关闭时调用,可以在<script>脚本中通过window.onunload来指定或者在<body>里指定。区别在于onbeforeunload在onunload之前执行,它还可以阻止onunload的执行。

    Onbeforeunload也是在页面刷新或关闭时调用,Onbeforeunload是正要去服务器读取新的页面时调用,此时还没开始读取;而onunload则已经从服务器上读到了需要加载的新的页面,在即将替换掉当前页面时调用。Onunload是无法阻止页面的更新和关闭的。而 Onbeforeunload 可以做到。曾经做一个考试系统,涉及到防止用户半途退出考试(有意或者无意),代码如下:

<script type="text/javascript">   
<!--     
    window.onbeforeunload = onbeforeunload_handler;   
    window.onunload = onunload_handler;   
    function onbeforeunload_handler(){   
        var warning="确认退出?";           
        return warning;   
    }   
       
    function onunload_handler(){   
        var warning="谢谢光临";   
        alert(warning);   
    }   
// -->   
</script>   


这段代码在FF和IE上都能正确执行.再点击关闭按钮时首先触发obbeforeunload事件,点击否定时不执行onload事件.
通常应用在 注销session等等登陆信息 等方面.... 

通常应用在 注销session等等登陆信息 等方面....


运用onunload事件判断浏览器是刷新还是关闭窗口
 
function CloseOpen(event) {
if(event.client<=0 && event.clientY<0) {
alert("关闭");
}
else
{
alert("刷新或离开");
}
}


window.onbeforeunload = function() //author: meizz    
       {    
              var n = window.event.screenX - window.screenLeft;    
              var b = n > document.documentElement.scrollWidth-20;    
              if(b && window.event.clientY < 0 || window.event.altKey)    
              {    
                     alert("是关闭而非刷新");    
                     window.event.returnValue = ""; //这里可以放置你想做的操作代码    
              }    
       }  
分享到:
评论

相关推荐

    js实现监听浏览器关闭和刷新事件

    js实现监听浏览器关闭和刷新事件支持三大浏览器,点击直接看效果

    JS针对浏览器窗口关闭事件的监听方法集锦

    本文实例总结了JS针对浏览器窗口关闭事件的监听方法。分享给大家供大家参考,具体如下: 方式一:(适用于IE浏览器,而且刷新不提示,只在点击浏览器关闭按钮的时候提示) [removed] [removed]=onclose; function ...

    js调用浏览器打印模块实现点击按钮触发自定义函数

    把浏览器打印的功能保留并赋予到自己添加的按钮当中,可以在点击按钮的同时触发自定义的函数

    JS区分浏览器页面是刷新还是关闭

    在web开发中我们经常各种各样的需求。今天小编给大家介绍JS区分浏览器页面是刷新还是关闭标签页,非常实用,感兴趣的童鞋参考下吧

    微信浏览器左上角返回按钮监听的实现

    即 公众号菜单-&gt;A-&gt;B-&gt;C,点击返回后,返回了B(且无刷新),目的是要在C直接跳转至A(公众号菜单-&gt;A-&gt;B-&gt;C,C-&gt;A),虽然可以在C上添加按钮之类的操作进行跳转(公众号菜单-&gt;A-&gt;B-&gt;C-&gt;A),但当点击左上角返回按钮后,...

    js事件监听机制(事件捕获)总结

    在前端开发过程中我们经常会遇到给页面元素添加事件的问题,添加事件的js方法也很多,有直接加到页面结构上的,有使用一些js事件监听的方法,由于各个浏览器对事件冒泡事件监听的机制不同,le浏览器只有事件冒泡,...

    vue实现微信浏览器左上角返回按钮拦截功能

    主要介绍了vue实现微信浏览器左上角返回按钮拦截功能,本文通过实例代码相结合的形式给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

    【JavaScript源代码】vue浏览器返回监听的具体步骤.docx

     需要监听浏览器的回退按钮,并阻止其默认事件。 具体步骤如下: 1、挂载完成后,判断浏览器是否支持popstate mounted(){ if (window.history && window.history.pushState) { history.pushState(null, null, ...

    JS监听微信、支付宝等移动app及浏览器的返回、后退、上一页按钮的事件方法

    主要介绍了JS监听微信、支付宝等移动app及浏览器的返回、后退、上一页按钮的事件方法,需要的朋友可以参考下

    JavaScript 监控微信浏览器且自带返回按钮时间

    比如现在有一个操作 是 A-&gt;B-&gt;C-&gt;B 在B页面..."我监听到了浏览器的返回按钮事件啦"&#41;;//根据自己的需求实现自己的功能 [removed] = 'http://www.baidu.com'; }, false); function pushHistory() { var state = {

    javascript监听鼠标滚轮事件浅析

    这些都是通过js对鼠标滚轮的事件监听来实现的。今天这里介绍的是一点简单的js对于鼠标滚轮事件的监听。 不同浏览器不同的事件 首先,不同的浏览器有不同的滚轮事件。主要是有两种,onmousewheel(firefox不支持)和...

    javascript 跨浏览器开发经验总结(五) js 事件

    } 只要不是用了个别浏览器独有的事件,一般的click,mouseover事件等在各浏览器中都可以这么使用。 但是当一个事件需要绑定多个监听,或者需要动态注册/移出监听时,简单事件模型就不够用了,需要使用高级事件模型...

    有道JavaScript监听浏览器的问题

    OK,问题来了:假如我们在a 所在的页面有个按钮,可以触发点击事件并进行一些操作。 而这个点击事件需要在href打开的IE窗口关闭后触发。。。 这个时候,我们如何监视href打开的窗口呢?(通过javascript,不要说...

    苹果浏览器微信底部返回栏显示/隐藏的问题

    此段js代码完美解决 ; (function () { try { isIOS = !!navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/) if (fn.isIOS) { // window.history.pushState({}, title, #); document.addEventListener...

    一个复杂美观的登录界面

    3、按钮监听响应事件的实现方式优化; 4、包含全屏方法的实现; 5、连个div块的叠加; ---------------------------以下为上个版本介绍--------------------------- 用html、JS、css写的一个登录界面的网页。 可以...

    (手机移动web)iscroll+html5+css3+js实现下拉刷新上拉分页的功能

    基于iscroll4和html5、css3实现的下拉刷新、上拉分页的demo,兼容pc、android、ios、wp等设备。解决了上拉分页footer存在bug的问题。 支持chrome、ff、opera、360浏览器、百度浏览器、qq浏览器等众多主流浏览器。

    browser-extension-toggle-button:浏览器扩展切换按钮

    调用listen()来监听事件。 要激活,请发送激活消息或单击浏览器扩展程序的按钮。 参数:选项(对象): 图标(对象):Chrome:将“活动”方形图标宽度映射到图像路径,Safari:“活动”图像路径(视网膜支持:...

    【JavaScript源代码】今天分享几个少见却很有用的 JS 技巧.docx

    “返回”按钮 使用 history.back() 可以创建一个浏览器“返回”按钮。 ()"&gt; 返回 &lt;/button&gt; 2. 数字分隔符 为了提高数字的可读性,您可以使用下划线作为分隔符: const largeNumber = 1_000_000_000; ...

Global site tag (gtag.js) - Google Analytics