firefox Venkman调试javascript

Author:David | 【转载时请务必以超链接形式标明文章原始出处和作者信息及本声明
URL:

调试javascript一直是令我头疼的问题,反复添加alert,刷新网页去找问题。
用mozilla的Venkman就方便多了,但是装了以后不会用,网上关于Venkman的中文文档几乎没有,只能去啃这个e文的http://www.svendtofte.com/code/learning_venkman/index.php

下载安装Venkman: http://www.hacksrus.com/~ginda/venkman/
使用 Firefox 的用户需要另外安装一下:

安装后重起firefox,从工具菜单打开javascript debugger:



弹出下面的窗口:


 


基本调试:

打开http://www.svendtofte.com/code/learning_venkman/venkman_example_1.html这个网页,打开Venkman,左边有这样的信息:

Loaded scripts panel

双击文件名,页面的源代码就出现在右边的代码窗口了。

Source code displayed by Venkman(需要注意的是:Venkman是javascript调试器,不是编辑器,你不能再Venkman中编辑代码。)

点击文件名前面的+号,会展开代码中的元素,比如上面的test()函数。点击test,右边的代码窗口test()函数会出现被选中的变化:

Source code displayed by Venkman

VenkMan的相关图形颜色含义:

J JavaScript (.js)

H Hypertext Markup Language (.html, .htm)

Z eXtensible Userinterface Language (.xul)

X eXtensible Markup Language (.xml)

Z All other files

Z JavaScript function

调试窗口下面的命令行可以输入javascript语句,结果显示在信息窗口:

输入1+1:

Interactive session

输入String.fromCharCode(b) + "B"

Interactive session

设置调试环境:

Setting an element as the evaluation object

现在就可以在这个网页的基础上进行调试了,输入document.title试一下:

Interactive Session

输入test(),自然就是运行代码中的test()函数了。

现在点击venkman_example_1.html 中的"move to ne"跳转到:

http://www.svendtofte.com/code/learning_venkman/venkman_example_2.html

设置调试环境为venkman_example_2.html,你可能已经注意到Venkman上面的工具条中间的按钮都不能用,现在你点击stop,变成下面这个样子:

Venkman toolbar

stop的意思是不管js是否在运行,都停止,进入"waiting-for-something-to-happen"模式。

现在转回到firefox的窗口,刷新一下venkman_example_2.html这个页面,你会看到Venkman跳出来了:

Venkman paused

javascript的运行截止在黄色代码那行,现在上面的按钮就可以用了,点击一下Continue,代码继续运行,网页上会显示运行结果。


本的调试大概就是这样子,http://www.svendtofte.com/code/learning_venkman/index.php上面还有更多的调试技巧,上面这些做简单调试够用了,剩下的以后翻译。


评论:

翻译得好.正需要呢
http://www.sooft.org

很不错,适合初学者。正好最近想用了。谢谢!

不错不错,收藏先.

适合初学者。正好最近想用了。谢谢!收藏先.

太好了, 多谢你翻译。 这个能帮助调试。

强烈要求继续翻译, 期待ving

感谢你的文章,不过我发现有个问题:我用的是win2000+firfox2.0.0.9+ VenkMan0.9.8,但是javascript debugger不能正常工作,重启动机器后只能进入一次调试,要想进入第二次调试必须重启动机器,点击javascipt debugger菜单栏没有任何反应,你知道怎么回事么?求助。

用firebug吧,venkman太难用了

不对啊!我的JS代码在里面调好了啊!但是还是在FF里面不显示啊!
如之奈何啊!

(选填)

(必填)

(选填)


Clicki