IE - 防止在IE中显示错误
我正在开发一个Web应用程序。我的应用程序在Chrome和Firefox上运行良好,但由于某种原因,在IE中出现了一些错误。即使出现了几个错误,应用程序仍然可以顺利运行,没有明显的问题。IE - 防止在IE中显示错误
我想隐藏最终用户的错误,因为他目前显示一个小图标表示发生了错误。
我该如何做到这一点?
谢谢
到目前为止,要做的最好的事情是找出代码导致错误的原因并解决该问题。
因为这是专门在IE中发生的事情,你可以使用来window.onerror
处理(禁止)他们,如果他们运行时(不是编译)错误,这从另一个回答您的评论听起来像他们。从该链接:
要抑制的
window
事件默认Internet Explorer错误信息时,event
对象的returnValue
属性设置为true
或者干脆Microsoft JScript中返回true
。
onerror
事件触发运行时错误,但不会出现编译错误。另外,通过脚本调试器引发的错误对话框不会被返回true
所抑制。要关闭脚本调试器,请通过从工具菜单中选择Internet选项来禁用Internet Explorer中的脚本调试。单击高级选项卡,然后选择适当的复选框(es)。
例子:
此代码导致错误(因为我想提领undefined
):
document.getElementById('theButton').onclick = function() {
var d;
display(d.foo);
};
但是如果增加这一点,错误被压制,因为我们告诉IE我们处理了它:
window.onerror = function() {
// Return true to tell IE we handled it
return true;
};
据我所知,没有这样做,因为你将被控制浏览器(又名应用程序)没有真正的方法,这将是一件坏事。用户可以manually turn off those errors,或者你可以看看你是否可以修复你的JavaScript。但是,除了这两种解决方案之外,我认为你运气不好。
@vondip:推荐作为一个单独的问题提出一个单独的问题。 – 2011-03-14 16:28:08
@ T.J。 Crowder-会的,谢谢 – vondip 2011-03-14 16:29:45
(开玩笑):尝试/抓住一切。 – 2011-03-14 17:50:17