我的问题是
我正在将HTML字符串加载到UIWebView中,在其中我是从应用程序的Documents文件夹中引用本 map 像的。
<html><body><img src="image.png"/></body></html>
它加载得很好,与baseUrl或其他没有任何问题。问题是当我做一些事情并生成具有相同名称的新图像,并将其保存在相同的Documents文件夹中时,覆盖旧的图像(我删除旧的图像并保存新的图像)。
现在,在UIWebView仍在屏幕上加载的情况下,如果我执行[webview reload]或再次手动加载html字符串,则仍会得到旧图像,该图像刚刚被覆盖。
我已经在模拟器文件夹中检查了image.png的确是新图像,而不是旧图像。而且我已经做了可以想象的一切来阻止webview缓存。
当然,如果我用不同的名称保存新图像,说“image2.png”,然后用src =“image2.png”重新加载html字符串,则一切都可以正常显示。
我在这里想念什么?
最佳答案
尝试将随机查询字符串附加到图像源。
即。
function ImageSource(src){
return src + "?time=" + (new Date()).getTime().toString();
}
function ForceImageReloads(){
var images = document.getElementsByTagName("img");
for (var i=0;i<images.length;i++){
var img = images[i];
var s = img.getAttribute("src");
img.src = ImageSource(s);
}
}
ForceImageReloads();
或类似的东西:)
关于iphone - UIWebView加载被覆盖但不会刷新的本地镜像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12518716/