基本上,我需要检查图片的URL是否有效,以便显示它或者显示一些占位图片。
最好的解决方案似乎是进行一个Ajax请求或类似的操作,并根据响应进行处理。问题在于请求说它“已被CORS阻止”,因此这总是返回false,因此该函数始终显示占位符图像。
function checkImg(url){
$.ajax({
url: url,
method: 'GET',
dataType: 'json'
}).done(function (response) {
return true
}).fail(function(jqXHR, textStatus, errorThrown) {
return false
})
}
if checkImg(url){
# do something
} else {
# do something else
}
我最烦恼和困惑的是,我可以直接访问图片(例如从此URL:https://vikua.com/images_cameras_rails/521474/large/image),但控制台会返回“由于CORS被阻止”的错误信息。 此外,如果我将链接直接放在HTML标签中,图片也能正常工作,但我无法从那里进行错误处理,对吗?
感激任何答案。
编辑:事实证明,我实际上可以通过一些HTML来处理这种错误。使用'onerror'就可以了!非常感谢jonatjano提供的解决方案!