Firebug是否可以通过按下按钮或键盘快捷键来停止javascript,而不是通过设置断点来停止它?
我为什么要这样做? 我们有一个非常动态的网站,有很多动画。如果我能在动画正在做我想要检查的事情时停止脚本,那将是一个很大的帮助。 这比摆弄断点要快得多。
答案 0 :(得分:7)
我是这样做的,从Web控制台(不是暂存器),运行:
window.addEventListener("keydown", function() {debugger;})
然后返回调试器选项卡。当您聚焦文档并按一个键时,浏览器将暂停JS。
答案 1 :(得分:4)
Firebug中有一个暂停按钮。点击它就是你要找的东西。
答案 2 :(得分:3)
Firebug有不同的方法可以在不在特定行设置断点的情况下停止脚本执行。这些选项称为Break On features。
在您的情况下,我看到两个相关选项:
在下一行执行的行中打破JavaScript
脚本面板有一个 Break On Next 按钮(),它允许您在下一个执行的JavaScript语句中停止脚本执行。也可以通过键盘快捷键 Ctrl + Alt + B 启用此功能。
因此,只要想要检查动画,就点击键盘快捷键。
打破HTML变异
HTML 面板有一个 Break On Mutate 按钮(),它允许您在下一个HTML突变时停止脚本执行。
还有更细粒度的选项可以阻止特定元素的变异,这些元素在元素的上下文菜单中可用。这些选项是:
如果动画在元素的style
属性中更改了CSS, Break On Attribute Change 可能是正确的选择。
答案 3 :(得分:2)
如果你知道它想要检查的是什么,那么断点有什么问题?此外,您可以在代码中使用 debugger 关键字,或者您可以在代码中注入console.log / debug / warn / info语句。 (您可以为那些没有控制台对象的环境存根控制台对象。)
答案 4 :(得分:1)
根据您的描述,我猜测您的代码中的javascript控制台日志记录可能会对您有所帮助。查看http://getfirebug.com/wiki/index.php/Console_API。
答案 5 :(得分:1)
取决于您正在使用的动画库,可能会有一个“停止所有动画”方法 - 例如jQuery's .stop()。你是如何处理动画的?
答案 6 :(得分:1)
如果您使用Web开发人员插件,则可以禁用所有java脚本在页面上运行,然后根据需要使用firebug。
答案 7 :(得分:0)
解决此问题的最佳方法是转到HTML下拉列表,其中包含firebug中的HTML选项卡。取消选择"突出显示更改"和"滚动更改以查看"这应该允许您检查正在执行的html和css代码。我希望你们能做到这一点。
答案 8 :(得分:0)
如果网站不断从服务器重新加载内容,您可以切换到“网络”窗格。上下文菜单中有一个“Break on XHR”条目,当选中该条目时,它会在尝试获取新内容时停止您的脚本。
答案 9 :(得分:-1)
最简单的方法是安装firefox扩展“PrefBar”。在那里你可以添加一个复选框“JavaScript”。如果你停用它,javascript就会停止。