正如标题所示,请尝试将其粘贴到此页面上的Chrome devtools控制台中。代码显示在sources选项卡中,但history.back()
语句不作为断点。在window.history.pushState("object or string", "Title", window.location.href.substring(window.location.href.lastIndexOf("/")) + '?test');
history.back();
debugger;
之后,断点似乎也不起作用。
{{1}}
有人可以告诉我为什么会这样吗? 有没有办法改变这种行为?
我正在运行Chrome 49.0.2623.112(官方构建)m(32位)
答案 0 :(得分:0)
我会为你做研究回答: - ):
请查看this SO answer中的参考资料以获取详细信息,但高级解释是history.back()
电话是非阻止电话。当它在事件循环的后续迭代中执行时,很可能导致某种重置,从而阻止debugger;
在我的实验中,如果您将debugger;
来电替换为预定的来电:setTimeout(function() { debugger; }, {{anything greater than 1ms}} );
它按预期工作。
有趣的观察,但是!