情况是这样的。弹出窗口包含我需要调试的 JavaScript。它还包含一个发生得如此之快的重定向,我无法足够快地打开检查器来触发断点。我首先打开检查器,然后单击一个链接,该链接将关闭检查器并打开包含 javascript 的弹出窗口。但逻辑发生了,并且重定向触发得如此之快,在 Chrome 已经关闭带有我需要调试的脚本的弹出窗口之前,我无法打开检查器。
我已阅读Google documentation设置断点效果很好,但断点仅在检查器打开时才会触发。
我尝试使用从SA answer找到的debugger;
但再一次,它仅在 Inspector 打开时才会触发。
为了调试它,我还尝试设置一个“ sleep ”功能(它会消耗处理器,不好等),如下所示:
function sleep(milliSeconds){
var startTime = new Date().getTime(); // get the current time
while (new Date().getTime() < startTime + milliSeconds); // hog cpu
}
sleep(5000);
这也不起作用。
有没有办法让检查器通过代码弹出?如果没有,调试这个的最佳方法是什么? 谢谢。
最佳答案
我一整天都在为这个问题苦苦挣扎,终于找到了解决方案。只需在代码中的调试器状态之前放置一个警报即可:
alert('Time to attach the debugger');
debugger;
当屏幕上出现警报时,只需点击 Chrome 检查器中的“检查”链接即可。检查器将附加到您的页面,然后您可以单击警报框中的“确定”继续。然后它将停止在调试器语句处
关于javascript - 通过代码打开 Chrome Inspector 来捕获快速断点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21639869/