如何使用 javascript 重新加载此图像以从服务器获取新图像,而无需重新加载页面?
<img src="?option=com_fcse&task=getimage&width=100&height=40&characters=5&r=<?php echo mt_rand(0, 10000000); ?>" />
谢谢
如何使用 javascript 重新加载此图像以从服务器获取新图像,而无需重新加载页面?
<img src="?option=com_fcse&task=getimage&width=100&height=40&characters=5&r=<?php echo mt_rand(0, 10000000); ?>" />
谢谢
这应该这样做:
thatImgObj.src = thatImgObj.src.replace(/&r=\d+/, "&r="+ ~~(Math.random()*1e7));
(当然,有 1e-7 的机会再次获得相同的缓存破坏器 - 时间戳可能是更好的选择)
好吧,我认为最简单的方法是更改src
Javascript 中的属性。就像:YouImageElement.src += "&rand2"+Math.random();
修改src
属性会导致图像重新加载,并且因为它有另一个随机数集客户端,它不应该被缓存。
你的代码
添加id="img1"
<img id="img1" src="?option=com_fcse&task=getimage&width=100&height=40&characters=5&r=<?php echo mt_rand(0, 10000000); ?>" />
JS代码:
var newImage = new Image();
newImage.src = document.getElementById("img1").src + "&_=" + new Date().getTime();
在 url 的末尾添加了一个 cachebreaker