JavaScript/VB Script脚本程序一般有两种执行方式,一种是嵌入在宿主程序里面执行,比如在IE浏览器里面执行;另外一种,在资源管理器里面双击执行(虽然还是通过另外一个程序解释执行,但是给人的感觉毕竟是直接运行)。
这两种方式,都可以使用Visual Studio来进行调试,先看大家用得比较频繁的网页脚本程序的调试:
1. 要调试网页里面的脚本程序,调试器需要宿主程序—这里也就是IE的支持,实际上所有的脚本程序解释器都实现了一个COM的调试接口。调试器通过查询解释器的这个接口,可以设置断点,查询变量以及捕捉异常,当然,查询到这个接口,需要宿主程序同意……至于如何实现这个接口,我们会在以后的文章里面讲到。
2. 默认情况下,IE是将脚本调试支持功能关闭的,因此你需要显示地打开它。打开IE,点击“工具”—“Internet 选项”,在“Internet 选项”里面选择高级页签,在“设置”列表里面,找到“禁用脚本调试(Internet Explorer)”选项,它默认是勾选上的—将它勾掉。
3.使用IE打开一个新的网页,无论是一个远程的,或者本地的(从本地硬盘打开)网页。例如下面一个网页,另存为test.html:
1.<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2.<html xmlns="http://www.w3.org/1999/xhtml">
3.<head>
4.<title>JavaScript调试</title>
5.<script language=javascript>
6.function onload() {
7.var test = unescape("http://www.google.com");
8.alert(test);
9.}
10. </script>
11. </head>
12. <body onload="onload()">
13. </body>
14. </html>
|
4. 启动Visual Studio,点击VS菜单里面的“工具”—“附加到进程”菜单,打开“附加到进程”窗口里面。Visual Studio其实支持很多种调试模式,调试C++(native)程序,调试.NET(托管)程序,调试脚本程序,调试Silverlight程序以及调试SQL存储过程。默认情况下,Visual Studio会根据附加的进程类型来选择最合适的调试模式,但是有的时候,你需要手工设置一下。例如Internet Explorer这种程序,IE可以同时运行多种子程序,IE本身和ActiveX控件是C++/C写成的,IE可以运行Winform/WPF程序,IE可以运行Silverlight程序,当然,IE最多的还是运行JavaScript/VB Script脚本程序。Visual Studio在附加到Internet Explorer进程的时候,总是会被IE弄糊涂,所以我们需要手工告知Visual Studio我们希望采用什么调试模式。
在“附加到进程”窗口里面,在“附加到…”(英文是Attach To…)文本框旁边点击“选择”按钮,在弹出的“选择代码类型”窗口里面,勾选“调试下列类型”,并选择“脚本”。如下图所示:
5. 接着你需要在“附加到进程”窗口里面选择要附加的进程,在“可用进程”(Available Processes)列表里面,有一个“类型”(Type)列,里面列举了对应进程支持的调试模式,比如你可以看到在上图里,好几个iexplore.exe支持脚本和C++调试模式(Script, x86)。因此你所需要做的就是找到执行网页的进程,这里我选择了ID为3732的iexplore.exe,因为那个是运行第三步网页的进程。最后点击“附加”(Attach)按钮使用脚本调试模式调试指定的IE进程。
注:细心的网友可能会看到,ID为1692的iexplore.exe的标题是“JavaScript调试”—对应的就是我们执行网页的浏览器进程ID。其实在IE 8以前,选择执行网页的浏览器进程一般都是根据浏览器的标题做的,但是IE 8里面有一些改变,这个变化以后的文章里会讲到。
6. 附加上去以后,在网页的第7行(网页源码在第三步里面)设置一个断点—就跟平常调试C#和C++代码一样,设置好了以后,返回到IE进程里面,刷新网页。这个时候,Visual Studio应该会在网页的第7行中断IE的执行,你可以在“监视”(Watch)窗口里面查看脚本变量的值:
分享到:
相关推荐
JavaScript/VBScript脚本程序一般有两种执行方式,一种是嵌入在宿主程序里面执行,比如在IE浏览器里面执行;另外一种,在资源管理器里面双击执行(虽然还是通过另外一个程序解释执行,但是给人的感觉毕竟是直接运行...
在IE和firefox中调试javascript的教程
javascript脚本调试工具 Script Debugger 集成在IE中的一款很原始的调试工具,具备基本的调试功能,除了可以用于调试客户端脚本,还能调试在Microsoft IIS上运行的服务器端脚本。该工具命令窗口是基于文本的,针对...
打开ie->工具菜单->inter选项->高级选项卡->去掉“禁止脚本调试"选项 2,打开vs.net,创建一个新的asp.net项目(或打开一个) 3,运行你要调试的页面 4,当你的页面呈现在ie里的时候,重新回到vs.net 5,在脚本中设置断点:
JavaScript脚本程序设计,包括电子教案及源程序
ASP 与 JavaScript 学习者的速查手册
<script type="text/javascript" src="image/ie_png.js"></script> <script type="text/javascript"> ie_png.fix('.png, .menu ul li a span'); // 第二个参数为含有png的标签id(css) ie_png.fix('.png, .logo...
Javascript脚本程序调试器、正则表达式练习器,Javascript脚本程序调试器、正则表达式练习器
IE JS 调试工具 和 FireFox中的FireBug很相似,非常方便在IE中调试JS
很实用的方法,刚学的分享下!<script type="text/javascript">
WEB 开发人员的得力工具,只需要在网页中嵌入一个js文件,即使在模式对话框中,也一样方便在线查看网页源码,javascript变量,在页面上执行自定义脚本,即写即运行,不影响被调试页面的外观。 主要功能: 变量 ...
IE的JavaScript调试工具,感觉还行
JavaScript 脚本程序设计,JavaScript 脚本程序设计,JavaScript 脚本程序设计,JavaScript 脚本程序设计
<script src="./js/vue%20(1).js" type="text/javascript" charset="UTF-8"></script> src里面的内容根据自己的下载的Vue.js的文件位置决定的,我这里只是拿我自己做的举个例子。这个地方的vue.js是因为我下载了两次...
js程序的调试是相当郁闷的,很多错误是无法控制的,在没有什么好的调试工具那是更加麻烦的,现在的情况比以前稍好,在Firefox下还有firebug,这的确是一个不错的js调试工具,但在IE下使用就很麻烦,而且效果很不好,...
在IE中的JS调试一直是影响我们开发效率的一大问题,本文就介绍如何在IE中调试JS
IE javascript 脚本视角解决办法
javascript脚本调试器 javascript_editor
RATJS是一个用C语言实现的小型javascript/ecmascript解释器。你可以用它来运行自己的javascript程序,也可以将它作为脚本引擎嵌入自己开发的程序中。