【问题标题】:Make Firebug output errors somewhere persistent使 Firebug 输出错误持续存在
【发布时间】:2010-10-22 00:22:13
【问题描述】:

我的 JavaScript 中有一些错误,它应该打开一个包含图像的对话框(有效),然后在该图像上调用 JQZoom 插件(无效)。我认为 Firebug 会在控制台中输出一些错误。我的代码应该拦截超文本链接的点击,然后返回false 以防止浏览器移动到另一个页面。但是,由于 JQZoom 调用失败,它永远不会到达return false,导致页面切换,然后我看不到有什么错误。

那么有没有办法让 Firebug 输出错误在某处持续存在?或者我可以在某处找到最新的错误吗?

【问题讨论】:

    标签: jquery firefox firebug


    【解决方案1】:

    如果在错误发生之间有页面加载,理论上您可以在 Firefox 错误控制台(工具 | 错误控制台)中找到错误。我说理论上是因为最近我看到了没有报告的实例,但我没有缩小这些实例的范围。

    从那里,我通常设置断点来帮助调试脚本。

    【讨论】:

      【解决方案2】:

      您可以从您的代码中log to the Firefox/Firebug console

      [编辑] 这里的想法是将有关对象状态的信息转储到控制台和/或在可疑代码周围放置一个 try/catch 块并将异常记录到控制台。

      【讨论】:

      • 我很清楚这一点,但实际上没有什么可记录的,因为我确切知道哪段代码失败了。
      【解决方案3】:

      在紧要关头,您可以使用权限提升:

      netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");

      file I/O:

      【讨论】:

        【解决方案4】:

        我设法通过使用setTimeout 在图像上调用 JQZoom 来“解决”这个问题。这样浏览器就可以在失败之前到达return false。 Firebug 说有错误但我在控制台中找不到任何东西...

        【讨论】:

        • 有一个菜单可以过滤Firebug在控制台中显示的错误类型:/
        【解决方案5】:

        我不知道有什么方法可以按照您的要求进行操作,但是您可以尝试使用 FireBug 调试您的 javascript 代码。只需在执行代码之前放置一些断点,然后单步执行它们

        【讨论】:

        • 实际上我想避免这种情况,因为这是 JQuery 并且 JQuery 有很多开销。
        • 如果你使用 step over 而不是 step in,你会看到调试器按照你的代码运行,而不是 jQuery 内部。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多