js修改img的src属性刷新图片时的图片缓存问题

您所在的位置:网站首页 jquery设置src js修改img的src属性刷新图片时的图片缓存问题

js修改img的src属性刷新图片时的图片缓存问题

2023-08-22 18:20| 来源: 网络整理| 查看: 265

From: https://my.oschina.net/u/2519523/blog/1833940

问题:

上传一张图片,通过js更新src属性刷新图片使其即时显示时, 当img的src当前的url与上次地址无变化时(只更改图片,名称不变,不同图片名称相同)图片不变化(仍显示原来的图片) 但通过firebug看图片已经变化,因为当src的地址不变时浏览器不会重新加载图片仍从缓存里面读取

方法:只需每次刷新图片时,改变一下src的地址内容就行了,

(1)通过前台变化,让js每次生成一个随机数作参数放在url后边,但该参数没有实际意义

(2)每次请求到该图片页面时,从后台传一个随机数,前台获得该随机变量并放在url后边,该随机数也没有什么实际意义

原理:

由于在img的src中增加了随机数参数,多次访问图片时,浏览器认为是访问了不同的图片路径(或者说是访问了不同的图片), 浏览器会每次重新访问服务器读取图片, 而不再读取缓存中的图片。

Example:

//显示图片 $("#empImgContent").attr('src', src=“**/uploads/empimgs/" + empObj.empPic +"?t=" + Math.random()); var img1 = document.getElementById("img_box"); // 默认读取缓存 img1.src = "video/default.jpg"; // 强制读取最新的文件 img1.src = "video/" + cameraIndex +"-2.jpg" + "?timestamp="+ new Date().getTime();


【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3