我制作了一个简单的弹出图像查看器。你可以在这里看到它的演示页面:
http://caerphoto.com/quickslide/
和实际的JS在这里:
http://caerphoto.com/quickslide/quickslide.js
我正在尝试将有用的错误处理程序添加到setPopup()
函数(第169行左右)中创建的图像对象中,但事实证明这很困难。注册处理程序工作正常,当出现问题时,处理程序将触发。
问题是,“错误的MIME类型”之类的不重要的事情算作错误,至少在Windows上(在OS X中,在Chrome和FF4中似乎很好),因此即使图像加载,每次都会弹出错误消息细
有没有办法确定实际的错误是什么,所以我可以过滤掉重要的错误(例如404)并做出相应的响应?为了澄清,我要问的是处理错误事件,而不是JavaScript异常。
我已经尝试检查传递给处理程序的错误对象,但它似乎没有包含任何有用的信息。
看来我误解了错误的原因 - 事实证明这条线是造成它的:
popupImg.src = "";
然而问题仍然存在 - 确切地知道出了什么问题是有用的。
答案 0 :(得分:0)
您是否查看了Mozilla浏览器中的error object?您始终可以在try...catch
(docs)块中包装内容以查看您的异常详细信息,这些信息提供了相当多的信息。
try {
var t = a.notexists + b.thisisnotreal;
} catch (e) {
/* do something with the error */
}
错误对象对IE的实用性有限,你得到一些非标准的东西,但它并没有真正为你做任何好处。对于Mozilla,有一些值得一提的非标准属性,特别是stack
和lineNumber
- 对调试最有用。