码迷,mamicode.com
首页 > 其他好文 > 详细

页签关闭之后复制链接到地址栏,页面仍然可以访问。

时间:2019-07-02 09:19:33      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:style   win   时间   UNC   request   思路   url   microsoft   art   

// 此问题主要是浏览器关闭之后我们浏览器到底做了哪些操作。

 

1、刷新浏览器

  unbeforeunload  -->  onunload -->  onload

  事件运行机制是:解绑前,要解绑,重新加载页面。

 

2、关闭浏览器

  unbeforeunload  -->  onunload

 

3、两者的差别如何区分。

思路:我们定义两个事件,根据两个时间差我们来确定是刷新还是关闭,当然ie  不兼容。此处做了好多次Ie 彻底不执行。。。。。,无语地方。

 

function getXMLHttpRequest(){

    var xhr;

    if(window.ActiveObject){

        xhr = new ActiveObject("Microsoft.XMLHTTP")

    }else if(window.XMLHttpRequest){

        xhr = new XMLHttpRequest()

    } else {

        xhr = null;

    }

    return xhr;

}

 

var beaginTime = 0, differTime = 0;

window.onunload=function() { // 此处页面只能同步执行,异步此处不执行,IE 当然也不执行。

    differTime = new Date().getTime() - beginTime;

    if(differTime < 5) {

        var xhr = getXMLHttpRequest();

        xhr.open("post", url);

        var data = JSON.stringfy();

        xhr.setRequestHeader("Content-Type", "application/json;chartset=UTF-8")

        xhr.send(data);

    } else {

        console.log("刷新")

    }

}

 

window.onbeforeunload = function() {

    beaginTime=new Date().getTime();

}

页签关闭之后复制链接到地址栏,页面仍然可以访问。

标签:style   win   时间   UNC   request   思路   url   microsoft   art   

原文地址:https://www.cnblogs.com/GongYaLei/p/11118401.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!