Page 109 - JavaScript修炼之道
P. 109
附录B JavaScript调试指南 101
B.6 Opera和Dragonfly
Opera采用了一种不常见的方法来提供开发者工具。它的Dragonfly采用了“离线在线混合模
式”,由于Opera会在你打开Dragonfly面板的时候连接互联网,然后自动下载更新,这就意味着你
在第一次使用它的时候需要处于在线状态,不过这应该不算什么问题。不过,根据我个人的经验,
我发现它似乎必需处于在线状态才能够正常工作。在离线状态下,即便我之前下载过它,它在启
动时仍然经常由于无法连接Opera的服务器(或其他原因)而被终止。
Dragonfly当前的版本(在本书的写作时还是alpha3)显然还比较粗糙,我希望Opera的设计
者能够花时间好好设计一下,而不是搞成现在这样一层套一层的选项卡界面。我认为其他调试工
具使用Firebug那样的布局是有原因的(既简单又足够强大),所以Opera实在没必要独辟蹊径,搞
出一套既复杂又难用的界面。不过,最近的版本中这个问题似乎得到了改善。
图B-10 Opera Dragonfly:Scripts选项卡
为了实现我们之前的JavaScript调试步骤,我们只需要图B-10中Scripts选项卡里面的内容。工
具条上的按钮包含了各种常用的操作:运行/继续、单步调试、单步进入、单步退出以及在何时
自动触发调试模式(比如,进入一个函数或碰到一个错误)。你可以在下拉列表中选择你打算进
行调试的源文件(JavaScript或HTML),源码左边的沟槽用来设置断点(右键单击断点来禁用/重
新启用它);代码窗口下面(没错,就是这个诡异位置)的Command line子选项卡提供了一个类
似于控制台的命令行;右边的选项卡显示了调用栈和局部变量(Inspection子选项卡中)。
总体来说,它可以应付常规的调试工作。不过我得承认,我个人的调试过程是这样的:首先
在Safari或Firefox的环境下编写代码,然后到另一个浏览器(Firefox或Safari)中测试效果,并作