有没有办法告诉 Chrome 调试器(或者可能是 Firebug?)不要破坏某些文件?假设它们基本上没有损坏?这似乎是他们可能构建的东西。
6 回答
现在可以在 Firefox 中使用黑盒 JS 文件 https://developer.mozilla.org/en-US/docs/Tools/Debugger
并在 Chrome Canary 中使用 Experimental Dev 工具。 http://www.divshot.com/blog/tips-and-tricks/ignoring-library-code-while-debugging-in-chrome/
更新。在 Chrome v. 75中有一个用于 blackboxing 的单独选项卡。
以上现在也适用于稳定的 Chrome 版本。
最新版本的 Chrome 实现了一项新的黑盒功能,可以完全满足您的需求。基本上,当您在给定文件上设置 blackbox 选项时,它将阻止 Chrome 调试器侵入该文件。
此功能是内置的,可以使用文件的上下文菜单(右键单击)进行设置。如果 Chrome 调试器设置为在所有异常上停止,它也将起作用。
如果您遇到的问题是 Chrome 调试器在所有异常上停止,即使是 jQuery 内部的异常,那么您可能需要告诉 Chrome 只在未捕获的异常上暂停,而不是所有异常。在调试器的脚本面板中,窗口左下角有一个图标来控制它。
- 转到开发人员工具设置,然后单击左侧面板上的 Balckboxing 选项卡。
- 然后单击添加模式按钮并键入 jquery.js
- 关闭并重新打开开发人员工具,现在已跳过!
如果调试器在 jQuery 文件中的某个地方发生故障,您可能会将可疑调用包装在 try/catch 中,然后在您自己的catch
. 这样,您就可以准确地找出问题所在。
我更倾向于进行堆栈跟踪以了解我的代码为什么会爆炸,例如无效的 JSON,而不是试图掩盖它。