1

我在 asp.net 2.0 中有网络应用程序

我在萤火虫中有以下图像

在此处输入图像描述

当我使用 F10 调试 javascript 时,整行第 67 行被一次性执行,当我再次按 F10 时,第 68 行被执行

所以在第 67 行有多个语句,它们是一次性执行的。

那么如何在firebug中逐条调试语句?

谢谢。

4

2 回答 2

1

这是调试缩小的 javascript 代码时的常见问题。

理想情况下,您应该使用非缩小的 javascript 进行调试。如果这是您的网站,您应该在测试时将 JS 代码换成开发版本。

如果它是一个库,很多第三方工具都提供一个.min.js版本和一个普通.js版本,所以现在换掉.min.js并使用 .js`。如果它是您自己的代码,那么无论如何您都应该拥有原始代码。

话虽如此,如果它是库代码,那么您可能不需要调试它;问题可能出在您自己的代码中,而不是在库中。在您自己的代码中设置断点,并跳过任何库调用。

如果您必须使用压缩代码测试您的网站,那么您需要使用一种称为“Source Maps”的技术来帮助您。

Source Map 在原始未缩小的 JS 代码和正在运行的缩小版本之间保留一组链接。这允许您使用缩小的代码调试您的站点,但可以在调试器中查看原始未缩小的代码。

这是相对较新的技术。我知道它肯定在 Chrome 中可用。我不确定它是否在 Firebug 中可用。您可能需要进一步调查。如果它还没有,它很快就会出现。(也许看看 beta 版本或 nightlies)

当然,即使它可用,为了实际使用它,您需要拥有原始源代码和源映射,以便调试器进行映射。同样,第三方库应该为您提供这些。对于您自己的代码,您需要在缩小过程中生成地图。

关于源地图的进一步阅读:http: //net.tutsplus.com/tutorials/tools-and-tips/source-maps-101/

希望有帮助。

于 2013-09-04T09:45:06.270 回答
0

F10 和 F11 进入和跨过

于 2013-09-04T09:31:23.057 回答