为什么firebug调试有时会工作,有时候不行?

时间:2010-04-29 05:43:54

标签: javascript debugging firebug embedding

我想在HEAD元素中调试嵌入的javascript文件。

我导航到该网站,查看代码,并制作断点

alt text http://www.deviantsart.com/upload/qfqbvu.png

但是当我点击重新载入时,脚本消失并且它不会在断点处停止:

alt text http://www.deviantsart.com/upload/bqes25.png

调试工作较早,所以我知道它的工作原理。 我需要做什么才能让Firebug始终调试我的脚本?

6 个答案:

答案 0 :(得分:2)

我之前也注意到了这种行为。看起来如果在调试器运行时刷新页面(即在你遇到断点并且正在逐步执行代码之后),就会发生这种情况。这远非结论性的,只是我随着时间的推移随便观察到的。

另外,我尝试避免使用firebug激活多个标签,因为它似乎感到困惑。

编辑:我想补充说我已经通过几种不同的方式看到了这种表现形式:

  • 脚本面板中根本没有显示外部脚本文件。

  • 出现外部脚本文件,但是firebug没有“看到”它。你知道这已经发生了,因为可以设置断点的代码旁边的行号不会突出显示(以前是绿色,但现在看起来只是比其他行更暗的阴影)。我已经看到这种情况发生在HTML页面上的内联javascript(恐怖!)。

  • 外部脚本文件在那里,但您只能看到一个充满代码的单个屏幕。 “屏幕已满”是萤火虫面板视口。

答案 1 :(得分:2)

关闭firefox,然后重启。有时萤火虫会感到困惑。还要确保你有最新版本。

答案 2 :(得分:1)

您需要激活脚本标签

enter image description here

答案 3 :(得分:0)

我不确定<script><head>(而不是内部<body>)实际上是合法的HTML。如果不是,正如我怀疑的那样,你不能错误地对Firebug提出错误支持......! - )

答案 4 :(得分:0)

我所知道的脚本处理中的错误是1)jquery动态加载脚本失败,2)新的Function()无法看到,3)某些类型的document.write()无法看到。

Firebug处理与Firefox串联的脚本文件。这意味着Firebug必须在页面加载时处于活动状态,这意味着路径中的任何异常都将导致文件被错误处理。如果您在加载前打开了firebug并且仍然遇到问题,那么最可能的解决方法是在新的Firefox配置文件中安装Firebug。这会导致您获得一组全新的默认选项,并且无需其他扩展即可运行Firebug。在重新添加其他扩展时,查看脚本中的问题:然后您可能会发现哪些扩展会干扰处理脚本的代码路径。我知道这是一个痛苦的问题,但JS调试没有来源;-)。我们正在尝试安装更多Firebug和Firefox扩展程序,以尝试减少这些问题。

答案 5 :(得分:0)

在我们的例子中,它是JS文件的捆绑。

不仅FireFoxChrome也是如此。

我们将文件移出捆绑包并将其放在需要引用的页面上,它开始像魅力一样工作。