js 给链接 url或href或js、css、图片等解决浏览器缓存

一、 添加时间戳 

情况一、链接是常量

 var rand = new Date().getTime();
  var aLen=document.getElementsByTagName("a");
  console.log(aLen.length);
  for (var a=0;a<aLen.length;a++){
    var href = aLen[a].getAttribute('href');
    document.getElementsByTagName("a")[a].setAttribute('href', href + '?' + rand);
    console.log(document.getElementsByTagName("a")[a].getAttribute('href'));
  }

情况二、链接是变量

    rand = Math.random();
    $('a').each(function(){
        href = $(this).attr('href');
        if (href.length == 0 || href.indexOf('javascript') > -1) return;
        else if(href.indexOf('?') > -1){
            $(this).attr('href', href + '&' + rand);
        }else{
            $(this).attr('href', href + '?' + rand);
        }
    });

原理:在URL中加时间戳(或者任意一个随机数)就会保证每一次发起的请求都是一个不同于之前的请求,这样就能避免浏览器对URL的缓存。

二、添加随机数

<script type=”text/javascript“ src=”/js/test.js?+Math.random()“></script>

 

posted @ 2018-06-14 13:01  Candy-Yao  阅读(673)  评论(0编辑  收藏  举报