给静态文件加随机数或时间戳防止浏览器文件缓存

今天被同事指出一个bug,就是在静态文件中加时间戳是这样:

<link rel="stylesheet" href="../css/main.css?v="+new Date().getTime()>

这种写法当时也是在网上随便搜索下找到的,自己也没验证,后面自己在浏览器上检验了下果真有问题,就是后面的时间戳没有获取到,主要是由于获取时间戳的js代码执行,当然不执行,由于js代码在link中没有执行环境,不是在script标签内。所以后面改成如下方式:

时间戳:

<script>
    document.write('<link href="../css/main.css?v=' + new Date().getTime() + '" rel="stylesheet" type="text/css"/>');
</script>

随机数:

<script>
    document.write('<link href="../css/main.css?v=' + Math.random() + '" rel="stylesheet" type="text/css"/>');
</script>

引入js文件也同样如此

时间戳:

<script>
    document.write('<script src="./index.js?' + new Date().getTime() + '"><\/script\>');
</script>

随机数:

<script>
    document.write('<script src="./index.js?' + Math.random() + '"><\/script\>');
</script>

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值