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

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

 

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.οnunlοad=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();

}

转载于:https://www.cnblogs.com/GongYaLei/p/11118401.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值