【问题标题】:Debugger doesn't show frame html source调试器不显示框架 html 源
【发布时间】:2015-01-25 11:12:20
【问题描述】:

我正在使用 Firefox 开发者版,尝试在框架中调试页面 (html+javascript)。 使用 Firefox 33,在调试器部分我可以看到框架内页面的源代码,激活断点...

我的开发者版的问题是它不显示页面的 html 代码,尽管它是在工具栏的左侧选择的。它显示了一些 html 代码,但它不是来自所选页面。我找不到它来自哪里。

有没有办法在 Firefox 33 和开发者版的调试器中具有相同的行为?

提前致谢,致以最诚挚的问候

【问题讨论】:

  • 您是否启用了帧切换工具?你这样做hereaccessed here。这是一项较新的功能。
  • 谢谢canuckistani。帧切换器工具被禁用,但它不会改变行为。我总是在检查器选项卡中看到正确的 html 源代码,但在调试器选项卡中看不到。如果我在检查器中选择一些 javscript 代码并选择“在调试器中显示”,它会跳转到调试器选项卡,但 html 代码完全不同。我检查了 web 服务器中的日志,并且没有从 firefox 请求其他网页。
  • 更多测试:如果使用框架切换器工具,我在检查器选项卡中选择不同框架(经典框架,而不是 iframe)中的页面,我可以看到正确的 html 源代码,但在调试器选项卡中,有些页面没有没有 html,我收到消息“此页面没有来源”。我感兴趣的页面总是显示错误的 html 源代码。
  • 如果没有一个可以重现的例子,真的很难给你答案。抱歉,我无法提供更多帮助。
  • 希望对您有所帮助,例如here 一个带有一些框架的页面,如果我切换到一个页面,我会在调试器中收到消息“此页面没有来源”

标签: firefox-developer-tools


【解决方案1】:

这就是 GC 对你的作用

简短的回答,框架的 HTML 正在被浏览器引擎垃圾收集。当页面/html 上没有活动脚本且仍有一些工作要做时,就会发生这种情况。

这可以通过保持对页面中任何对象的强引用并将其放在浏览器认为仍在使用的地方来防止。

例如,

window.foobar = some_object_from_the_page

会起作用的。

这是root causepotential & partial fix 即将推出。

【讨论】:

  • 感谢优化器。如果我使用调试器窗格左侧的页面列表选择页面,则持有强引用可以解决问题。但是使用框架切换工具时问题(此页面没有来源)仍然存在
  • @jlgetxo 好吧,那么我们将只需要等待平台修复登陆真正的修复。 PS,我的目标是取得一些成就,所以请不要对这个答案投赞成票:)
猜你喜欢
  • 2012-03-11
  • 2015-09-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-21
  • 1970-01-01
相关资源
最近更新 更多