Firebug是否可以通过按下按钮或键盘快捷键来停止javascript,而不是通过设置断点来停止它?有没有可能使用Firebug停止JavaScript而不使用断点?
为什么我会喜欢这样做? 我们有一个非常动态的网站,有很多动画。如果我可以在动画正在执行某些我想检查的内容时停止脚本,那将非常有帮助。 这比用断点摆弄要快得多。
Firebug是否可以通过按下按钮或键盘快捷键来停止javascript,而不是通过设置断点来停止它?有没有可能使用Firebug停止JavaScript而不使用断点?
为什么我会喜欢这样做? 我们有一个非常动态的网站,有很多动画。如果我可以在动画正在执行某些我想检查的内容时停止脚本,那将非常有帮助。 这比用断点摆弄要快得多。
从你所描述的,我猜你的代码的JavaScript控制台日志记录可能会帮助你最好的。检出http://getfirebug.com/wiki/index.php/Console_API。
Firebug中有一个暂停按钮。点击这是你正在寻找。
根据您使用的动画库,可能会出现“停止所有动画”的方法 - 例如,jQuery's .stop()。你如何处理动画?
如果你知道它在做什么你想要检查的地方,那么断点有什么问题?此外,您可以在代码中使用调试器关键字,也可以在代码中注入console.log/debug/warn/info语句。 (您可以为那些没有环境的环境留出控制台对象)。
解决此问题的最佳方法是转到HTML下拉菜单,它位于萤火虫的HTML标签旁边。取消选择“突出显示更改”和“滚动更改以查看”,这应该允许您检查正在执行的html和css代码。我希望你们想这样做。
这是我做到了,从Web控制台(未暂存器),运行:
window.addEventListener("keydown", function() {debugger;})
然后返回到调试器选项卡。当您关注文档并按下某个键时,浏览器将暂停JS。
最简单的方法是安装firefox扩展“PrefBar”。在那里你可以添加一个复选框“JavaScript”。如果你停用它,JavaScript停止。
那么......你怎么能够安装Firefox扩展,但无法阅读和理解问题......? :-)。停止意味着运行然后停止,而不是“停用”。提问者的目标是能够按需暂停,而不设置断点:-) – erm3nda 2016-11-24 06:27:13
如果您使用web开发者插件,您可以禁用所有在脚本中运行的java脚本,然后根据需要使用firebug。
Wow.'http://chrispederick.com/work/web-developer/'现在我可以用我的JS代码进行故障诊断沉重的CSS更新,看看究竟发生了什么。本页面上的大多数其他解决方案都无法让我到达那里。当脚本中的JS“暂停”时,您无法检查CSS。 @Marty thx。 – zipzit 2014-06-19 18:09:33
这不会停止当前页面的脚本执行。它只会禁用下一页上的JavaScript重新加载,这无助于检查特定点上的动画。 – 2016-05-13 06:53:38
如果网站不断从您的服务器重新加载内容,则可以切换到“网络”窗格。这里的上下文菜单有一个“Break on XHR”条目,当它被选中时,它会在你尝试获取新内容时停止你的脚本。
Firebug具有不同的方法来停止脚本执行,而无需在特定行设置断点。这些选项被称为Break On features。
在你的情况下,我看到两个相关的选项:
打破的JavaScript上的下一个执行的行
的脚本面板上有一个打破接下来按钮(),其允许您在下一个执行的JavaScript语句中停止脚本执行。此功能也可以通过键盘快捷键启用Ctrl + Alt + B。
所以,只要在动画处于想要检查的位置时点击键盘快捷键即可。
歇在HTML突变
的HTML面板上有一个打破变异按钮(),它允许你停止在接下来的HTML突变脚本执行。
还有更多细粒度的选项可停止特定元素的变化,这些元素可在元素的上下文菜单中使用。这些选项是:
在你的情况打破属性更改可能的情况下,动画改变元素的style
属性中的CSS正确的选择。
谢谢你的选择,我会尽我所能找到我想要的方式。我必须调试几个JavaScript脚本,并想知道我会遭受多少:-)谢谢。 – erm3nda 2016-11-24 06:31:04
请注意,这些选项仅适用于Firebug,[Firebug的开发不幸停止支持Firefox DevTools](https://blog.getfirebug.com/2016/06/07/unifying-firebug-firefox-devtools/) )(Firebug的[*脚本*面板在Firefox 50中已损坏](http://stackoverflow.com/a/40748127/432681))。尽管DevTools仍然缺少第二个选项(突破HTML突变)。此功能在[bug 1004678](https://bugzilla.mozilla.org/show_bug.cgi?id=1004678)中请求。 – 2016-11-24 16:41:38
暂停按钮被标记为“中断所有错误?”这不是那种工作方式。 – 2010-04-13 21:14:50
@matt,至少它可以快速分析。解决方案对我来说已经足够了。 +1 – Mateng 2013-02-15 15:23:58