首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从Internet Explorer错误对象中检索行号

从Internet Explorer错误对象中检索行号
EN

Stack Overflow用户
提问于 2012-05-23 06:30:45
回答 1查看 2.7K关注 0票数 1

有没有办法从Internet Explorer 7/8错误对象中检索行号?

我只知道.message、.description和.number属性。

我搜索了一下,在.stack ( http://msdn.microsoft.com/en-us/library/hh699850(v=vs.94).aspx:)上找到了一篇MSDN文章,但即使使用他们自己的示例代码也不会返回行号。

http://jsfiddle.net/LWevS/

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-05-23 07:12:23

我深入研究了一下,发现可以使用window.onerror在IE中检索行号。它不是来自Error对象本身,但它是一种不错的解决方法:

代码语言:javascript
运行
复制
function BadFunction(){
    This.badcode.willnot.work = 1000
}

function ForceError(msg, url, lno) {
  alert("Error Occurred! Handled by Generic Error Handler" + "\n" +
     "Error: " + msg + "\n" + "URL: " + url + "\n" +   
     "Line Number: " + lno);

  return true;
}

window.onerror = ForceError;

此方法要求错误冒泡到窗口。如果您的代码中有try/catch,您将需要重新抛出错误,以便它可以冒泡。

在研究这个问题的解决方案时,我也在GitHub上遇到了StackTraceJS。他们的堆栈跟踪脚本在除了Internet Explorer之外的所有浏览器上都工作得很好。如果您想要记录客户端浏览器上产生的错误,这是一个很棒的运行时调试器。

http://stacktracejs.com/

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10711072

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档