我无法弄清楚如何从image.onload
调用的函数中捕获异常。请注意以下示例:
function afterImgLoads() {
throw 'This is being thrown from img.onload!';
}
try {
var img = new Image();
img.onload = afterImgLoads;
img.src = 'path/to/valid/image.jpg';
} catch(e) {
throw 'This is being thrown after setting img.src';
}
在上面的例子中,当afterImgLoads()
抛出自己的错误时,我无法弄清楚如何获取第二个throw语句。
答案 0 :(得分:5)
您可以使用onerror
img.onerror = onErrorFunction;
如果加载图像时出错,它将调用该函数
答案 1 :(得分:0)
您可以设置window.onerror,它将在页面上任何位置的未捕获异常中调用。
答案 2 :(得分:-2)
由于onload异步发生,所以catch不能抛出语句。