zoukankan      html  css  js  c++  java
  • 工作查漏补缺

    很早之前遇到过的微信浏览器的坑,今天又遇到了,记录一下:

    window.location.reload()微信浏览器失效

    href是location对象的一个属性,reload()则是location对象的方法
    所以对于href,可以为该属性设置新的 URL,使浏览器读取并显示新的 URL 的内容。
    对于reload()则是重新加载当前文档,如果该方法没有规定参数,或者参数是 false,它就会用 HTTP 头 If-Modified-Since 来检测服务器上的文档是否已改变。如果文档已改变,reload() 会再次下载该文档。如果文档未改变,则该方法将从缓存中装载文档。这与用户单击浏览器的刷新按钮的效果是完全一样的。如果把该方法的参数设置为 true,那么无论文档的最后修改日期是什么,它都会绕过缓存,从服务器上重新下载该文档。这与用户在单击浏览器的刷新按钮时按住 Shift 健的效果是完全一样。

    但对于安卓手机微信中的浏览器,reload只是从缓存中装载文档,所以当你使用该方法,是失效的;

    需要添加时间戳或者随机数,是微信软件缓存作出区分

    解决方法,用以下代码替换window.location.reload()

     window.location.href = location.href+'?time='+((new Date()).getTime());
    

      

  • 相关阅读:
    [Java]用递归判断是否为递减数组
    android欢迎界面的编程实现[手相评分软件实例]
    工作两周年的感想
    最新基于adtbundlewindowsx86的android开发环境搭建
    新浪微博Failed to receive access token
    朋友
    房产中介
    房产中介
    与 Josh Bloch 探讨 Java 未来
    关于英语学习的一点思考
  • 原文地址:https://www.cnblogs.com/elementzhao/p/11344154.html
Copyright © 2011-2022 走看看