有时,可能是连接速度慢,浏览器无法获取服务器中已存在的图像。
我尝试复制图像src url浏览器无法获取并在新选项卡中打开图像可以正常加载正如您所见在图片里。 Chrome可以加载图像并将其显示在控制台中。
我想知道为什么会发生这种情况以及如何解决这个问题。
我尝试通过添加一些参数来重新加载图像,以防止使用此代码缓存
images[instance].onerror = function(){
repeatPreload(this, 5);
}
function repeatPreload(Image, timeout){
if(timeout > 0){
setTimeout(function(){
Image.src = Image.src.replace(/\?d=*[0-9]{6,}/g,"") + "?d=" + new Date().getTime();
console.log("Fail to load image : " + Image.src + " , timeout : " + timeout);
Image.onerror = repeatPreload(Image, timeout - 1);
},2000);
}else{
Image["error"] = 1;
}
}
我已经尝试复制图像文件夹并在发生错误时从重复文件夹中获取图像,但总是失败。