当我说“介入”时,为什么Firebug不会进入我的脚本?

时间:2012-04-04 16:44:17

标签: javascript html firebug

我正在尝试生成一个页面,其中要显示的基本数据可以以不同的方式进行解释。所以我有一个数据格式,以及一些不同的JS脚本来从数据生成HTML。每个脚本都包含一个名为BuildView的函数,该函数输入数据,解析数据并使用document.write输出HTML。服务器端脚本将适当的视图插入到页面中的正确数据和脚本包含中。很简单,对吧?

除了页面中没有显示任何内容。所以我决定尝试使用Firebug进行调试。这是页面的基本结构:

<!DOCTYPE blah blah blah>
<html>
<head>blah blah blah</head>
<body>
<script type="text/javascript" src="/view.js"></script>
<div id='main-page'>
  <h1 align="center">TITLE</h1>

  <p align="left"><strong>Data: </strong>
    <div id="data-view">
      <script type="text/javascript">
        BuildView('data from server');
      </script>
    </div>
  </p>
</div>
</body></html>

data-view div中没有​​显示任何内容。我加载了Firebug,切换到脚本选项卡,在BuildView的调用上设置断点,然后重新加载页面。它在断点处停了下来,然后我点击了 F11 (Step Into),希望找到我自己的BuildView脚本,环顾四周,看看发生了什么。相反......我一无所获。它只是跨过它并完成渲染页面。没有报告错误,但实际上没有发生任何错误。

如果你不知道,我之前没有使用过Firebug。我错过了什么?如何让脚本调试器实际调试到这个脚本?

2 个答案:

答案 0 :(得分:1)

  1. 确保脚本实际正在加载。
  2. 在函数中放置console.log()alert()以确保它实际上正在触发。
  3. div中的<script></script>标记,移至</body>标记的末尾。
  4. 尝试从控制台运行BuildView()以查看页面加载后是否有效。
  5. 让我知道这些是怎么回事。

答案 1 :(得分:1)

试试Google chrome's debugger。 Firebug在显示动态加载的文件时存在问题。

要尝试的另一件事是设置firebug以显示eval脚本。从播放/暂停按钮旁边的按钮

enter image description here