【问题标题】:Why won't Google Chrome's script debugger let me set a breakpoint? [closed]为什么 Google Chrome 的脚本调试器不让我设置断点? [关闭]
【发布时间】:2011-05-20 12:50:23
【问题描述】:

我在 Windows 7 x64 Ultimate 上运行 Google Chrome 8.0.552.215。我有一个简单的 jQuery 内联脚本,就像我过去成功调试过的任何脚本一样:

<script type="text/javascript">
  $(document).ready(function () {
    // do stuff here
    // but reduced to a simple
    alert('here!');
  });
</script>

我正在浏览我正在处理的网站的安全 (https) 部分。

没有脚本错误,脚本都运行得很好,但是我不能设置断点。

我尝试在 Firefox 的 Firebug 中对此进行调试,并且可以很好地设置和命中断点。

为什么会这样?

【问题讨论】:

  • 我想这也发生在我身上,所以我很好奇这笔交易是什么。
  • 我最近遇到了这个问题,因为我的 jQuery id 选择器不存在。
  • 我自己解决了这个问题,方法是点击 Chrome Source Viewer 角落的 De-obfuscate Source 按钮(它看起来像双尖括号。即“{ }”)

标签: javascript jquery debugging scripting google-chrome


【解决方案1】:

昨天(2 月 3 日)修复了这个错误,引入了一个用于管理 JavaScript 断点的新 api:http://code.google.com/p/chromium/issues/detail?id=69988

我从 http://build.chromium.org/f/chromium/snapshots/ 下载了最新的 Chromium nightly,并且能够在 JavaScript 中成功设置断点,而使用 Chrome 的当前稳定/beta/dev 版本无法做到这一点。

希望此修复程序将合并到 Chrome 的下一个版本中。在那之前,添加调试器;代码中的语句是设置断点的一种不错的解决方法。

【讨论】:

    【解决方案2】:

    当您在开发者工具已打开的情况下刷新页面时,是否会发生这种情况?我也遇到过这种情况。

    解决方法:

    1. 将资源跟踪设置为始终启用。

    2. 关闭开发者工具。

    3. 刷新页面。

    4. 打开开发者工具,标签资源。

    5. 设置断点。

    6. 提交错误报告here,因为这不是正常行为。

    7. 在 SO 上发布此错误报告的链接,以便我们都可以加注星标。

    【讨论】:

    • 感谢 Jan 的回复。这是该死的事情,它神奇地开始工作了。我什至关闭了浏览器,检查以确保没有隐藏的 chrome.exe 潜伏,但它仍然拒绝让我设置断点。然后我来再试一次,然后吹我它有效。 Grr.
    • 我的方法对你有帮助吗?刷新页面后重试(工具仍然打开),是否仍然有效?
    • 我遵循了你的方法,但是否解决了很难说。它现在也只是以我通常点击调试器的方式工作。也许是杂散的宇宙射线:)
    猜你喜欢
    • 2021-08-05
    • 2017-04-05
    • 2013-06-08
    • 1970-01-01
    • 2010-11-15
    • 2013-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多