因为部分需求(跟换头像,切换轮播图等等)改变图片或者本地上传新图片,会导致图片缓存问题,从而达不到预期效果,还是加载原图片
查找了一些资料,总结出2个步骤:
1.在图片的路径的后面拼接 ‘?内容’ 解决,具体如下
(1)在图片src路径后面加上时间戳,使浏览器(移动端设备)认为每次加载的不是同个图片。
例子:
timestamp(url) {
let getTimestamp = new Date().getTime();
url= url + "?timestamp=" + getTimestamp
return url
}
<img width=”188″ height=”150″ src=”url”>
(2)在图片src路径后面加上随机数,使浏览器(移动端设备)认为每次加载的不是同个图片。
例子:
<ul class=”imglist” >
<li><img width=”188″ height=”150″ src=”/images/photo/ico/pic_1_0128.jpg?random=”> </li>
</ul>
$(".imglist").find("li").each(function(index,domEle){
var obj = $(this).find("a").find("img");
obj.attr("src",obj.attr("src")+Math.random());
});
2.(浏览器)在<head>中加入这3句话:
<meta http-equiv=”pragma” content=”no-cache”/>
<meta http-equiv=”cache-control” content=”no-cache”/>
<meta http-equiv=”expires” content=”0″/>
表示不要缓存数据
以上是解决方法:大家视情况使用