`
nesta13
  • 浏览: 115790 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Javascript控制onbeforeunload刷新还是关闭时间

阅读更多

最近,项目中需要做一个关闭IE窗口前的提示事件。

 

网上寻找了一下这方面:

 

其实就是一个onbeforeunload方法的问题

 

对于右上角的关闭来说,使用onbeforeunload来调用函数就可以了

 

可是对于在页面上做关闭窗口事件呢,这也是一个小小问题,其实就是再做一个js函数,直接使用window.close()就可以了,它会在IE窗口关闭前,调用onbeforeunload事件。

 

但是onbeforeunload有个小毛病,就是页面刷新时,他还是会调用到onbeforeunload,为什么?其实刷新就相当于关闭了这个IE再重新打开的意思,因此还是会调用到onbeforeunload。

 

究竟怎么解决刷新不调用onbeforeunload呢?

 

网上提供很多方法,本人觉得最实用还是以下这段JS

 

window.onbeforeunload   =   function(){   
      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   =   "是否关闭?";
      }else{
             alert("是刷新而非关闭");   
     }   
}

 

分享到:
评论

相关推荐

    基于JavaScript判断浏览器到底是关闭还是刷新(超准确)

    //页面刷新时,刷新之前执行onbeforeunload事件,在新页面即将替换旧页面时onunload事件,最后onload事件。 //页面关闭时,先onbeforeunload事件,再onunload事件。 //对于火狐: //页面刷新时,只执行onunload;...

    onunload事件判断浏览器是刷新还是关闭窗口

    onunload 事件判断浏览器是刷新还是关闭窗口 在浏览器中,我们经常需要判断浏览器是刷新还是关闭窗口,以便执行相应的操作。onunload 事件可以帮助我们实现这个功能。当浏览器退出时会触发 onunload 事件,因此我们...

    判断浏览器是刷新还是关闭窗口

    ### 判断浏览器是刷新还是关闭窗口 在网页开发过程中,我们常常希望能在用户退出或离开当前页面时执行一些特定的操作,比如保存用户的状态、显示一个警告框等。为此,JavaScript 提供了 `onunload` 事件,它会在...

    用JS判断浏览器刷新还是关闭

    ### 如何用JavaScript判断浏览器是刷新还是关闭 在Web开发中,有时候我们需要了解用户是通过刷新页面还是直接关闭浏览器来离开当前网页。虽然JavaScript本身并没有提供直接的方法来区分这两种行为,但可以通过监听...

    javascript Onunload与Onbeforeunload使用小结.docx

    在JavaScript中,`onunload`和`onbeforeunload`是非常重要的两个事件,它们主要用于监听浏览器窗口关闭或者页面刷新的情况。这两种事件的应用场景非常广泛,比如在用户离开网页前进行数据同步、警告用户未保存更改等...

    浅谈javascript中onbeforeunload与onunload事件

    在最近的项目中,需要做到一个时间,就是用户离开...onbeforeunload 事件在即将离开当前页面(刷新或关闭)时触发。 该事件可用于弹出对话框,提示用户是继续浏览页面还是离开当前页面。 对话框默认的提示信息根据不

    javascript Onunload与Onbeforeunload使用小结

    Onbeforeunload也是在页面刷新或关闭时调用,Onbeforeunload是正要去服务器读取新的页面时调用,此时还没开始读取;而onunload则已经从服务器上读到了需要加载的新的页面,在即将替换掉当前页面时调用。Onunload是...

    判断页面是关闭还是刷新的js代码

    在探讨“判断页面是关闭还是刷新的js代码”这一主题时,我们首先需要理解网页生命周期中的几个关键事件:`onload`、`onunload`、`onbeforeunload`以及`onclose`。这些事件在网页加载、卸载或刷新过程中扮演着重要...

    JavaScript刷新页面大全

    ### JavaScript刷新页面大全 在Web开发中,页面的刷新是一个常见的需求。JavaScript作为一种客户端脚本语言,提供了多种方法来实现页面的刷新功能。本文将详细介绍几种常见的方式,并给出相应的代码示例。 #### 1....

    javascript监听页面刷新和页面关闭事件方法详解

    JavaScript中的`onbeforeunload`和`onunload`事件是页面生命周期中的两个重要事件,它们用于监听和处理用户离开页面的情况,比如页面刷新或关闭。这两个事件可以帮助开发者在用户离开页面前执行某些操作,如保存数据...

    jquery弹出层不关闭 父页面刷新

    在实际应用中,这些文件将配合jQuery和JavaScript代码,构建出完整的Web应用程序,实现弹出层和页面刷新的控制。如果需要进一步的帮助,如具体的代码实现或对ASP.NET和jQuery的深入理解,建议查阅相关的技术文档或...

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

    总之,通过JavaScript的事件监听和本地存储机制,我们可以有效地区分浏览器页面的刷新和关闭,进而实现更精细的用户体验控制。在这个过程中,不断关注用户体验并寻找优化空间,无论是对开发者还是产品经理,都是至关...

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

    此方法依赖于`onbeforeunload`事件,检查鼠标位置和`alt`键状态来判断是否为关闭操作,对刷新和直接关闭有区分。 2. 方式二:适用于IE和Firefox,不区分刷新和关闭 ```javascript window.onbeforeunload = ...

    javascript页面关闭事件

    ### JavaScript 页面关闭事件详解 #### 一、引言 在Web开发中,有时我们需要在用户即将离开当前页面时执行一些操作,例如询问用户是否确定离开(如果他们对表单进行了未保存的更改)、记录用户的某些行为等。这些...

    网页缓存清除及页面刷新与关闭.doc

    页面刷新和关闭的判断可以使用JavaScript中的onbeforeunload和onunload事件来实现。在上面的代码中,我们使用了onbeforeunload和onunload事件来判断页面是否需要清除缓存。 知识点7: JavaScript中的事件 ...

    禁止浏览器刷新和鼠标刷新还有键盘刷新

    标题和描述中提到的问题,即如何禁止浏览器刷新、鼠标右键刷新以及键盘快捷键刷新,可以通过JavaScript实现。以下是一些主要的技术点和实现方法: 1. **禁用浏览器刷新按钮和F5刷新**: JavaScript可以监听键盘...

    js监控IE火狐浏览器关闭、刷新、回退、前进事件.docx

    浏览器刷新事件可以通过监听`onbeforeunload`事件来间接实现,因为刷新页面本质上也是关闭了当前页面再重新打开。因此,刷新事件可以使用同样的处理逻辑。 ##### 3.3 监听浏览器前进/后退事件 监听浏览器前进或...

Global site tag (gtag.js) - Google Analytics