javascript检查img src是否有效?

时间:2010-08-17 06:46:30

标签: javascript image src

我有类似的东西:

document.getElementById('MyPicture').src = 'attempted.png';

如果客户端无法获取该资源,我想将其替换为:

document.getElementById('MyPicture').src = 'error.png'

我知道我可以在image标签中放置onError = function(),但是如何将Id传递给onError,以便我可以使用一个onError函数来改变任何不良图片的src?

3 个答案:

答案 0 :(得分:13)

是的,你可以使用onerror事件,图像元素真的是widely supported,例如:

var image = document.getElementById('MyPicture');
image.onerror = function () {
  alert('error loading ' + this.src);
  this.src = 'error.png'; // place your error.png image instead
};

image.src = 'non-existing.jpg';

检查示例here

答案 1 :(得分:2)

将它放在图片标签中:

onError="image_error(this.id)"

将图像的id传递给image_error函数.... duh

答案 2 :(得分:1)

添加onError属性确实是处理它的正确方法。在你的情况下,你会添加如下内容:

var myPicture = document.getElementById('MyPicture');
myPicture.onError = errorHandler();

function errorHandler(msg,file_loc,line_num) {
  myPicture.src = 'http://www.google.com/intl/en_ALL/images/srpr/logo1w.png';
}