我正在开发一个图片库网站,未来可能会有数千张照片。所有图片均来自其他网站/ API或用户上传。
用户上传的图片
<img src="../images/example.jpg" alt="" />
外部图片
<img src="http://example.com/xyz.jpg" alt="" />
假设从外部网站删除了图片。有没有办法使用jQuery / JavaScript等检查客户端的照片是否存在?
我认为是
i)我从外部网站链接图像
ii)从外部网站删除图片,当网站首次加载时,jquery会使用ajax等向服务器发送死链接信息
iii)我将修复此链接。
提前致谢...
答案 0 :(得分:1)
您可以在外部图像上使用“onerror”事件并创建服务器端脚本来处理错误,并在解决问题时返回通用的“未找到图像”图像。
像...一样的东西。
onerror="this.src='/fiximage.php?q='+this.src;"
答案 1 :(得分:0)
你可以这样做......
$(function() {
$(document).on("error", "img", function() {
// do something with $(this) here
});
});
这会检测到损坏的图像,并允许您对其进行一些操作。
答案 2 :(得分:0)
在这种情况下,您可以使用onerror
事件。
var imgs = document.getElementsByTagName("img"),
img, i = 0;
while (img = imgs[i++]) {
img.onerror = function() {
// just an example for error reporting
Ajax.send("POST /image_error.php", {src:img.src});
// change img src
img.src = "images/error.jpg";
};
}