防止在FTP中替换图像后从缓存加载图像
问题描述:
我为使用Adobe Muse的客户设计了几个网站。他们有特殊的定期更换,当他们改变时,我将它们作为图像上传。在我用新的图像(通过FTP)替换图像后,网站会显示旧图像,直到我刷新。这是对这些客户的普遍抱怨,因为它们看起来完全没有任何东西被替换。防止在FTP中替换图像后从缓存加载图像
有没有办法让浏览器自动显示新的图像而不加载缓存的副本?我可以在Muse中完成这项工作吗?还是需要使用PHP/HTML重建整个项目?
预先感谢您。
编辑:解决。查看答案。
答
浏览器通过url缓存请求。您可能会将更新时间戳追加到URL上作为参数。然后,当更新时间改变时,url会有所不同,浏览器应该更新图像。
答
我想出了一些来自@ChrisThompson的答案。使用JavaScript,我创建了一个日期变量,然后使用getElementById更改了图像的src。我将这些代码手动放入Muse的导出HTML文档中。不是最优雅的解决方案,但它不应该成为一个问题,直到我必须改变该特定页面的设计。
在head标签:
<script type="text/javascript">
var d = new Date();
var pageTime = d.getTime();
</script>
只是原来的img元素之下:
<script type="text/javascript">
document.getElementById("u696").href = "images/coupons.png?" + pageTime;
document.getElementById("u696_img").src = "images/coupons.jpg?" + pageTime;
</script>
(有A HREF和SRC因为页面链接到一个更大的版本的图像,所以两者都需要这种治疗,u696是Muse给这些特定元素的ID)
这可能会起作用,但我理想的是在Adobe Muse中寻找一些这样的功能。 – JonNelsonMedia 2014-10-09 19:03:02
我用你的答案来解决问题。见下文。谢谢! – JonNelsonMedia 2014-10-10 14:39:50
我对Adobe Muse一无所知,所以我无法提供任何其他建议。我很高兴你想出了一个解决方案。 – ChrisThompson 2014-10-10 14:41:40