有没有办法动态地尝试/捕获整个页面?

Max*_*axx 7 javascript try-catch

我有一个页面,神秘的JavaScript错误不断出现.它们似乎来自我们使用的应用程序,并且不拥有源代码.我正在研究这个问题的真正解决方案,但我们明天有一个演示,我想知道是否有一种方法可以在页面范围内抑制JS错误(比如在巨大的try catch中包装所有javascript组件).

jha*_*rtz 9

您可以向window.onerror事件添加处理程序.在这种情况下,窗口内发生的所有错误都将重定向到此事件的处理程序.(我在Firefox中对此进行了测试并且确实有效,但我在Chrome中遇到了问题 - 我的Chrome安装非常混乱,因此可能会出现问题,但是提交的Chromium错误与此问题有关:bug# 7771bug#8939)

window.onerror = function (msg, url, line) {
    alert("Error on line " + line + " in " + url + ":\n" + msg);
    // return true to prevent browser from displaying error
    return true;
}
Run Code Online (Sandbox Code Playgroud)

  • *请,请不要使用它!***修复代码.**我在Microsoft SharePoint中处理这种糟糕的想法浪费了太多时间.(但答案为+1) (4认同)