javascript - IE - 上传新图像时,显示旧图像

标签 javascript jquery html css internet-explorer

我正在使用 localStorage 来存储图像路径。我有一个页面,其中 New Image 由用户上传。我正在重置 localStorage,以便在回发完成时应用新图像。

Chrome, Firefox 中它运行良好但在 IE 中看到相同的旧图像。

当我清除 IE 中的浏览器缓存时,它会显示新图像。

如何在 IE 浏览器中解决这个问题?

我知道附加到图像的 querystring 技巧,但我不能在我的代码中使用它,还有其他方法吗?

最佳答案

尝试在图像 URL 的末尾添加缓存断路器,

newImage.src = "http://localhost:8080/image.jpg?" + new Date().getTime();

这会将时间戳添加到 image.jpg 请求中,这将使浏览器再次从您的服务器查找图像,而不是检索存储在浏览器缓存中的图像。

或者为了更好的方式,您可以使用 Cache-control: no-cache HTTP header 来提供图像。

Pragma: no-cache
Expires: Fri, 30 Oct 1998 14:19:41 GMT
Cache-Control: no-cache, must-revalidate

通过提供过去的日期,它不会被浏览器缓存。

关于javascript - IE - 上传新图像时,显示旧图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32664793/

相关文章:

javascript - 如何将位于单独文件中的模板与 mustache JS 一起使用?

javascript - 如何通过 onChange 带参数调用函数

html - 使列表项全部显示在一行中

javascript - 在 html5 中,如果您创建游戏等,是否会公开所有源代码?

javascript - RDFa 属性的事件监听器

jquery - 使用特定 div 时,.load jquery 函数不起作用

javascript - 如何 foreach 以特定类前缀开头的所有输入

javascript - Drupal 和 Require.js 表现不佳 - jQuery 的双重加载

javascript - 如何将事件处理程序分配给 proto.io 开/关开关?

javascript - 如何让 mouseClick 找到变量并将其随机化?