【问题标题】:Can I tell the Chrome script debugger to ignore jquery.js?我可以告诉 Chrome 脚本调试器忽略 jquery.js 吗?
【发布时间】:2011-10-30 21:46:40
【问题描述】:

有没有办法告诉 Chrome 调试器(或者可能是 Firebug?)不要中断某些文件?假设它们基本上没有损坏?这似乎是他们可能内置的东西。

【问题讨论】:

  • 这在 jquery 事件的上下文中对我特别有用。当一个事件被触发时,你必须通过大量的代码来确定正在调用哪些处理程序。
  • 看来您应该将 jfriend00 标记为答案。我找不到这种烦人行为的原因,他的回答解决了这个问题。
  • @OrPaz 我不同意,我的问题(以及我对 Josh 问题的理解)是我们正在调试我们的文件,但这并不意味着抛出异常。我的假设是我的代码是问题而不是 jQuery,所以我从不想调试 jQuery。我认为它就像 .NET 中的 DebuggerHiddenAttribute
  • 我投了 jfriend00 的答案,因为它可能对遇到这个问题的人很有价值,但我没有将其标记为正确答案,因为 Nathan Koop 是对的,它没有解决我的问题。

标签: javascript google-chrome-devtools


【解决方案1】:

现在可以在 Firefox 中对 JS 文件进行黑盒化 https://developer.mozilla.org/en-US/docs/Tools/Debugger

在 Chrome Canary 中使用实验性开发工具。 http://www.divshot.com/blog/tips-and-tricks/ignoring-library-code-while-debugging-in-chrome/

更新。在 Chrome v.75 中有一个单独的 tab for blackboxing

上述内容现在也适用于稳定的 Chrome 版本。

【讨论】:

  • 黑盒似乎不会让调试器跳过文件。它仍然会通过它的函数调用...完全忽略一个文件会很好。
  • 这就是黑盒的要点——运行代码而不看它的内容。
  • 当您根本不逐步检查其他库时,这不是黑盒,而不是它们不存在或未被使用。
【解决方案2】:

最新版本的 Chrome 实现了一个新的blackbox feature,它完全符合您的要求。基本上,当您在给定文件上设置 blackbox 选项时,它会阻止 Chrome 调试器侵入该文件。

此功能是内置的,可以通过文件的上下文菜单进行设置(右键单击)。如果 Chrome 调试器设置为在所有异常上停止,它也可以工作。

【讨论】:

  • 非常干净的解决方案无需插件。
  • 不幸的是不再有效。如果你选中了“Pause On Caught Exceptions”然后黑盒 jQuery 它仍然会在异常上中断。
【解决方案3】:

如果您遇到的问题是 Chrome 调试器停止处理所有异常,甚至是 jQuery 内部的异常,那么您可能需要告诉 Chrome 只暂停未捕获的异常,而不是所有异常。在调试器的脚本面板中,窗口左下角有一个图标来控制它。

【讨论】:

  • 用这个救了我!谢谢!(+1)
【解决方案4】:

在 Chrome 中,打开开发者工具,然后转到设置,您将看到 Blackbox 选项卡:

在 FireFox 中更简单,只需单击文件底部的眼睛:

【讨论】:

  • 你让我的生活成为天堂!谢谢!
【解决方案5】:
  1. 进入开发者工具设置并点击左侧面板上的黑框标签。
  2. 然后点击添加模式按钮并输入 jquery.js
  3. 关闭并重新打开开发人员工具,现在已跳过!

【讨论】:

    【解决方案6】:

    如果调试器在 jQuery 文件的某处发生故障,您可能会将可疑调用包装在 try/catch 中,然后在您自己的 catch 中抛出错误。这样,您就可以准确地找出问题所在。

    我更倾向于进行堆栈跟踪以了解我的代码为什么会爆炸,例如无效的 JSON,而不是尝试掩盖它。

    【讨论】:

      猜你喜欢
      • 2022-08-19
      • 2015-11-05
      • 2015-08-04
      • 2013-12-25
      • 1970-01-01
      • 1970-01-01
      • 2011-03-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多