Debugging 如何使用Firebug(或类似的东西)检查事件流?

Debugging 如何使用Firebug(或类似的东西)检查事件流?,debugging,events,firebug,Debugging,Events,Firebug,我面临着一个输入失去焦点的问题。问题是这样的: 我发送了一个AJAX请求来加载表单,当加载表单时,我以一种模式显示它 现在,如果我点击任何一个输入,它会立即获得焦点并模糊,所以我需要再次点击它(这次它会保持焦点) 我需要一个在Firebug控制台中跟踪事件流和调度的工具(或一些类似的工具),这样我就可以发现这种奇怪行为的罪魁祸首并加以修复 我尝试过Eventbug和FireQuery;但我无法找到导致此问题的代码。您可以转到Firebug的脚本面板,然后将鼠标悬停在输入上,然后从键盘上单击ALT

我面临着一个输入失去焦点的问题。问题是这样的:

  • 我发送了一个AJAX请求来加载表单,当加载表单时,我以一种模式显示它

  • 现在,如果我点击任何一个输入,它会立即获得焦点并模糊,所以我需要再次点击它(这次它会保持焦点)

  • 我需要一个在Firebug控制台中跟踪事件流和调度的工具(或一些类似的工具),这样我就可以发现这种奇怪行为的罪魁祸首并加以修复


    我尝试过Eventbug和FireQuery;但我无法找到导致此问题的代码。

    您可以转到Firebug的脚本面板,然后将鼠标悬停在输入上,然后从键盘上单击ALTCTRLB以激活“下一步中断”,然后单击输入,它应该会在输入的onclick处理程序中遇到断点,然后,您可以通过代码查找导致模糊的潜在调用(前提是由于某种原因,您没有在javascript中通过
    setInterval
    /
    setTimeout
    进行任何主动轮询,或者您使用的框架没有;然后它可能会在该代码中暂停)


    您可能还希望在页面的最开始执行一些代码,以覆盖
    addEventListener
    方法,从而劫持它:记录对它的任何调用,并将执行转发到原始函数;请参阅的幻灯片13-14(我使用Greasemonkey进行此操作,但此处不相关;请确保在页面的最开始执行此操作)。

    Alt+Ctrl+B无效,因为似乎有多个事件触发。我将尝试addEventListener方法劫持并报告。我使用Greasemonkey,这样我甚至可以为我的开发URL注册你的用户脚本。我使用了一个修改过的用户脚本,这对我帮助很大。我仍然需要找到bug的来源,但这绝对是一条路要走。