【问题标题】:Firebug breakpoints in dynamically generated jQuery?动态生成的jQuery中的Firebug断点?
【发布时间】:2011-04-19 19:37:09
【问题描述】:

所以 Firefox+Firebug 似乎是调试 jQuery 的首选工具。它当然非常方便。

我可以在页面最初加载时所在的 JavaScript 代码中获得断点(可断点的行在 Firebug 中显示为绿色行号)。

但是,当 Ajax 调用返回 jQuery 代码时,我无法获得要附加到它的断点。这甚至可能吗?

例如,当 Ajax 调用的结果是我插入到 DIV 中的 html 负载时,并且该 html 还包含一些 jQuery 代码以将新的单击处理程序附加到按钮...我如何获得断点在点击处理程序中?

(注意:我花了一段时间才找到从 Ajax 调用返回的 JavaScript 显示在哪里 - 在 FireBug 脚本选项卡的工具栏中,您必须单击第二个下拉列表以显示 JavaScript sn- ps)

【问题讨论】:

    标签: jquery debugging firebug


    【解决方案1】:

    我认为这是不可能的,因为没有从文件中插入 ajax 代码。

    您可以做的是在收到 ajax 结果时手动将debugger; 语句插入到 js 代码中。

    【讨论】:

    • 您的意思是让服务器添加debugger; 语句?谢谢。
    • 您可以这样做,或者在收到请求后将它们插入 onSuccess
    • 嗯,我明白了。 FireBug的一般原则是可以调试文件中的javascript吗?如果是这样,我可以将我的大部分 jQuery 函数移动到一个预先准备好的文件中,并且只动态添加事件处理程序。那我可以在预先准备好的东西中放置断点吗?
    • 嗯,我不太确定 - 但你应该试一试 :)
    【解决方案2】:

    您可以使用 Firebug 网络面板左上角的“break on XHR”按钮向 AJAX 网络请求添加断点,或者在已执行的网络请求的左侧添加断点。 还有官方的 Firebug 断点演示页面:https://getfirebug.com/doc/breakpoints/demo.html#net

    【讨论】:

      猜你喜欢
      • 2013-07-14
      • 1970-01-01
      • 2015-03-03
      • 2010-10-13
      • 1970-01-01
      • 1970-01-01
      • 2012-04-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多