b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

安卓浏览器js执行.windowlocation.reload()

电脑杂谈  发布时间:2021-03-17 15:08:56  来源:网络整理

问题:浏览器js执行window.location.reload()。通常情况下,页面在reload()之后仍然会向后台发送请求,但是在Android版本的微信浏览器中,在reoad()之后并没有实际的方向。在后台发送请求。因为默认情况下,微信是作为缓存处理的。

解决方案

在请求网址后添加随机数或时间戳记

多屏互动浏览 安卓_安卓浏览器缓存_安卓图片浏览

window.location.href=window.location.href+随机数(或时间戳)
复制代码

该方法替换reload()。代码如下

多屏互动浏览 安卓_安卓图片浏览_安卓浏览器缓存

function updateUrl(url,key){
    var key= (key || t) +=;  //默认是"t"
    var reg=new RegExp(key+\\d+);  //正则:t=1472286066028
    var timestamp=+new Date();
    if(url.indexOf(key)>-1){ //有时间戳,直接更新
        return url.replace(reg,key+timestamp);
    }else{  //没有时间戳,加上时间戳
        if(url.indexOf(\?)>-1){
            var urlArr=url.split(\?);
            if(urlArr[1]){
                return urlArr[0]+?+key+timestamp+&+urlArr[1];
            }else{
                return urlArr[0]+?+key+timestamp;
            }
        }else{
            if(url.indexOf(#)>-1){
                return url.split(#)[0]+?+key+timestamp+location.hash;
            }else{
                return url+?+key+timestamp;
            }
        }
    }
}
复制代码

如何拨打电话

window.location.href=updateUrl(window.location.href); //不传参,默认是“t”
window.location.href=updateUrl(window.location.href,v);//传入自定义的变量名
复制代码

更准确地说,您可以先确定浏览器是否为微信的内置浏览器,然后进行相应处理。代码如下

function isWeiXin(){
    var ua = window.navigator.userAgent.toLowerCase();
    if(ua.match(/MicroMessenger/i) == micromessenger){
        return true;
    }else{
        return false;
    }
}
复制代码


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shumachanpin/article-365763-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 唐娜霜
        唐娜霜

        我的儿女们也会继续这样做

      • 张红双
        张红双

        首要的是加快在成型岛礁上部署空

      • 魏孟停
        魏孟停

        觉着生活还不如以前

      热点图片
      拼命载入中...