`
deeravenger
  • 浏览: 17562 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

使用MSE调试js攻略

阅读更多
你有没有写过js?有没有经历过js出错时痛苦的调试过程?有没有写了一堆的alert()来打印变量的值,导致弹出框弹出的声音差点让你崩溃?你是否在寻找一种方式,让你能像调试java一样调试js?
 如果你的回答都是“是”,那么请看本文,肯定收益不少。
(好像上传图片比较麻烦,要看带图片版的请下载附件)
  
 
首先当然要知道 Microsoft Script Editor有没有安装好:
其中一种方法
-        打开Microsoft word右击工具条,选择 “web tools” 或者点View >Toolbar->Web Tools
 
-        点击 Microsoft Script Editor 图表 (见下图 – 红色框框内的图标)
 
 
点击了以后,如果已经安装好,就会打开Microsoft Script Editor,如下图:
如果没有安装好,它会提示你要安装,点击确定安装好了。
 
一般情况下,经过安装以后Microsoft Script Editor就处在可用状态了,但是在比较特殊的情况下,还会有一些问题。比如你不是管理员,那么有时候在点击debug/processes菜单的时候会出现如下的错误:
这种错误表示你的windows用户没有debug的权限,需要到控制面板里面将你的用户加入到debug组里面。
 
完成这些步骤以后,你的debugger已经处于可用状态了,但是离debug js还有一点点距离。因为ie还需要做一些设定。打开ie,到advanced里面把画红圈的两项内容去掉。
这样可以让脚本在有错误的情况下弹出debug入口:
 
自己找一个有脚本错误的文件,在弹出上面警告框的时候点确定,就可以进入debug界面了。
但是有时候会出现比较奇怪的问题,点了确定但是并没有打开debug,如果操作系统是win2k这种情况很可能出现,什么原因不清楚,解决的办法是事先把Microsoft Script Editor打开,然后再弹出那个警告框的时候就可以调试了。前面说到这个Microsoft Script Editor是藏在word里面的,如果每次都要打开word去吧它打开也太麻烦了,所以找到他的实际路径,做个快捷方式。它一般藏身与Microsoft Office安装路径\OFFICE11\下面,名称为MSE7.EXE。
打开debugger前还会有一个对话框,如下图所示:
上面有两个possible debugger,这是因为我的系统是win2k,我事先已经打开了一个,如果我事先不打开一个,那么possible debugger就只有一个,但是却不能工作:(
所以,在这种情况下,不能选new instance,可能在别的操作系统环境下,情况不同,这要靠自己试验了。点确定以后,还会出现一个对话框,直接点确定就是。这个时候他一般就会比较准确地定位到你出错的那一行代码上了。如下图所示,
有时候,他会打开多个两个文档,一个是js定义的,另一个是调用这个js的,如上图右边所示,你可以在两个文档之间切换一下,看看哪里是真正的根源。
出错以后的调试能做的事情好像不多,因为如果不停止debug,他一直会纠缠于出错的代码,导致没法往下执行。只能看看一些变量的值。选中一个变量,按shift+f9可以quick watch。当然也可以点右键加入watch。这样变量的值就显示出来了,这一招在调试的时候非常有用。再也不用写烦人的alert(xx)来显示一个变量的值了,尤其是你alert(xx),这个xx不幸是个object的时候,你就会看到令你吐血的结果。
出错后调试可能很多人用得比较多,但是在代码出现一些逻辑错误的时候,我想象java或者别的代码一样跟踪js的执行过程可不可以呢?答案是肯定的,你是不是觉得生活突然美好了许多?
OK,让我们来看看怎么做到。
首先确保你在出错的情况下已经可以顺利地调试了,不然先对照文档,把该设置的设置好。
打开一个页面,点view菜单,可以看到多了一项:script debugger,如下所示:
点open就可以进入调试器了。
不过有时候(经常地)你看到的是这样的场景:
哪里有script debugger?我不知道为什么会这样,也许微软的人知道。不过幸亏解决这个问题并不难,只要在这个窗口下安ctrl+N,打开一个新窗口就行了。这个新窗口会复制原来的窗口所有的内容,包括session,所以跟原来的窗口基本上是一模一样的。经过这样操作以后,这个script debugger 99%就出来了。如果还不出来,多试几次。
这的确比较令人抓狂,不过我想,是不是由于这些原因,所以一直没有详细的官方操作手册之类的东西呢?这个东西莫名其妙的地方太多,大家要结合自己的“机情”,反复揣摩其心思,建设一个XX特色的调试环境。
言归正传,现在进入了调试界面,点左边灰色的条就可以增加一个断点,再点一下就可以,去处,也有快捷键,一般是ctrl+alt+b。
接下来就是最激动人心的地方了,按f10可以让js代码单步执行,爽吧?不过有的人的机子上是f11。自己找找,反正是这几个键。同时你可以将变量加入watch观察其值。爽啊,反正我第一次发现这个功能的时候激动了好久,一直激动到手指头有点酸了:代码太长,这么一步步的何时是尽头啊。幸亏还有一个键,f5,可以让你直接执行到下一个断点。如果下一个没断点了就执行完以后返回到你的IE,这个功能非常有用哦。你可以在ie的页面上填好东西,然后按按钮之前跑到debugger里设个断点,然后按下按钮,这时debugger就会停在你的断点上。
从现在开始,享受js代码的开发吧!
分享到:
评论
15 楼 deeravenger 2007-07-18  
没有找到的话应该是没有安装好,先安装一下
14 楼 fangzhouxing 2007-07-18  
引用
你直接到Microsoft Office安装路径\OFFICE11\找到MSE7.exe,试着打开一下看看有没有问题。


谢谢回复。

但是没有找到 MSE7.exe 文件,我用的是 Office2003.
13 楼 keshin 2007-07-17  
hax 写道
keshin 写道
呵呵,我也有同样问题。
其实个人感觉,没有这些工具反而会逼你加强源码的阅读理解能力


工具还是有用的。但是单步调试工具不能替代良好的编程习惯,不能替代必要的log。

那是,否则我机器上就不会那么多了,呵呵
12 楼 HexUzHoNG 2007-07-17  
怪了。。。刚回来试了下自己本本,可以让我安装。。。
环境和公司的差不多。。要装好后,才会有MSE7.EXE这个exe
11 楼 deeravenger 2007-07-17  
fangzhouxing 写道
打开word 2003,在工具菜单中添加了菜单项“Microsoft 脚本编辑器”,但始终是 disable 的,为什么?

你也直接到安装目录中去找那个可执行文件,试试看。
10 楼 deeravenger 2007-07-17  
keshin 写道
呵呵,我也有同样问题。
其实个人感觉,没有这些工具反而会逼你加强源码的阅读理解能力

就学习一种语言而言,刚开始时当然不能太依赖工具,但是作为开发尤其是在公司里干活的时候,工具还是非常需要的,不是说嘛,工欲善其事,必先利其器。很难想象如果没有IDE,java开发是什么样一种效率。
9 楼 deeravenger 2007-07-17  
HexUzHoNG 写道
fangzhouxing 写道
打开word 2003,在工具菜单中添加了菜单项“Microsoft 脚本编辑器”,但始终是 disable 的,为什么?


刚刚在偶机器上试了下,也和你一样的情况。
以为是装了script debugger的问题,卸载了后,还是不可用。

你直接到Microsoft Office安装路径\OFFICE11\找到MSE7.exe,试着打开一下看看有没有问题。
8 楼 deeravenger 2007-07-17  
HexUzHoNG 写道
Microsoft Script Editor
这个和
Microsoft Script Debugger
有什么区别?

Microsoft Script Debugger我没有用过,但是好像说不如Microsoft Script Editor好用
7 楼 hax 2007-07-17  
keshin 写道
呵呵,我也有同样问题。
其实个人感觉,没有这些工具反而会逼你加强源码的阅读理解能力


工具还是有用的。但是单步调试工具不能替代良好的编程习惯,不能替代必要的log。
6 楼 keshin 2007-07-17  
呵呵,我也有同样问题。
其实个人感觉,没有这些工具反而会逼你加强源码的阅读理解能力
5 楼 HexUzHoNG 2007-07-17  
fangzhouxing 写道
打开word 2003,在工具菜单中添加了菜单项“Microsoft 脚本编辑器”,但始终是 disable 的,为什么?


刚刚在偶机器上试了下,也和你一样的情况。
以为是装了script debugger的问题,卸载了后,还是不可用。
4 楼 HexUzHoNG 2007-07-17  
Microsoft Script Editor
这个和
Microsoft Script Debugger
有什么区别?
3 楼 fangzhouxing 2007-07-17  
打开word 2003,在工具菜单中添加了菜单项“Microsoft 脚本编辑器”,但始终是 disable 的,为什么?
2 楼 deeravenger 2007-07-17  
在通常情况下,打开MSE,按ctrl+alt+p会弹出一个进程绑定对话框,可以绑定某个IE窗口,这样在脚本错误的时候可以打开MSE进行调试了。但是不知为什么在我的环境中这样不管用,必须要先打开MSE。
1 楼 deeravenger 2007-07-17  
大家有什么心得一起交流一下。有什么觉得讲的不对的也请指出。另外,附件中的版本图文并茂,比这个容易阅读,呵呵。

相关推荐

    mse.js:符合 W3C 规范的 MSE 相关跨浏览器支持

    7. **开发与调试**:使用mse.js的开发者可以利用库提供的API来控制媒体源的加载、解码和播放,同时可以通过调试工具检查和优化性能。 8. **性能优化**:通过MSE,开发者可以更有效地处理大型媒体文件,比如通过分段...

    JS调试工具(IE6下可以使用)

    2. **Microsoft Script Editor (MSE)**:作为Office套件的一部分,MSE是一个独立的编辑器,也具备JS调试功能。它可以作为一个外部工具与IE6配合使用,允许设置断点、查看变量、调用堆栈跟踪等。 3. **Web Developer...

    Microsoft Script Editor MSE7安装方法

    压缩包中的“js debug.doc”文件可能是关于JavaScript调试的指南,帮助用户更好地理解和使用MSE7进行脚本调试。打开文档,根据其中的指示学习如何使用MSE7调试JavaScript代码。 通过以上步骤,你应该能够成功安装...

    flv.js+flv.min.js的播放器使用案例

    FLV.js依赖于MediaSource Extensions (MSE) API,这是一个允许开发者通过JavaScript向浏览器提供多媒体数据的接口。这个库使得FLV视频能在HLS、DASH等现代流媒体协议之外得到支持,扩展了视频内容的兼容性。 2. **...

    JS 实现的 HLS 格式播放器.zip

    在这个名为“JS 实现的 HLS 格式播放器.zip”的开源项目中,我们看到它使用了JavaScript的HLS客户端实现,这意味着它是一个纯前端的解决方案,无需依赖Flash或其他后端技术来播放HLS流。 核心知识点: 1. **媒体源...

    flv.js 和flv-min.js

    FLV.js和flv-min.js是两个与视频流播放相关的JavaScript库,主要应用于网页中实现FLV(Flash Video)格式的视频播放。...在开发过程中,使用flv.js进行调试,而在部署时采用flv-min.js以提高页面加载速度。

    flv.js与flv.min.js

    要使用FLV.js,你需要在HTML文件中引入FLV.min.js,然后通过JavaScript初始化播放器。以下是一个基本示例: ```html <!DOCTYPE html> <title>FLV.js 播放器示例 ...

    脚本调试工具

    MSE提供了一个集成的IDE,包含语法高亮、调试工具和对象浏览器,使得脚本编写和调试更加直观。 总的来说,无论你是VBScript还是JavaScript的开发者,都有各种各样的调试工具可供选择。理解这些工具的功能和用法,...

    适用于 Vue3 的 hls.js 播放器组件,配置丰富,界面还算好看.zip

    hls.js 是一个JavaScript库,用于在没有原生HLS支持的浏览器上实现HLS播放。它解析M3U8播放列表,将TS分段转换为可用的媒体数据,然后通过MediaSource Extensions (MSE) 推送到HTML5 `<video>` 元素进行播放。HLS....

    哔哩哔哩flv.js,可内嵌播放flv格式的视频

    "flv.js"是未经压缩的源代码版本,方便开发者阅读和调试;"flv.min.js"是经过压缩和优化的版本,适用于生产环境,以减少网络传输的大小和提高页面加载速度。 使用FLV.js时,开发者需要在HTML页面中引入这两个文件,...

    前端项目-videojs-contrib-hls.zip

    《使用video.js与videojs-contrib-hls实现在前端播放HLS视频》 在现代Web开发中,多媒体内容的展示已经成为不可或缺的一部分。对于流媒体服务,HLS(HTTP Live Streaming)是一种广泛采用的技术,尤其适用于移动...

    海康监控Web SDK Html Javascript

    由于Web SDK主要针对Web环境,因此它充分利用了HTML5的新特性,如MediaSource Extensions (MSE) 和WebRTC,以及JavaScript的异步编程能力,确保在多种浏览器上流畅播放视频流。 3. **视频流处理** - **HLS...

    videojs压缩包

    `videojs` 是一个流行的开源JavaScript库,用于在网页上实现视频播放功能。它提供了丰富的自定义选项和良好的浏览器兼容性,使得开发者能够轻松地构建具有专业外观和功能的视频播放器。`rtmp`(Real-Time Messaging ...

    hLive, 基于h5和videojs的视频直播插件.zip

    3. **播放端处理**:在客户端,hLive通过Video.js加载并解析流媒体服务器提供的M3U8或其它格式的播放列表,利用MSE将流数据分割成小块,逐步加载到浏览器中。 4. **互动功能**:hLive还支持弹幕、聊天室等互动功能...

    基于JavaScript的毕业设计视频网站实现

    11. **测试和调试**:学会使用断点、console.log、开发者工具以及单元测试工具(如Jest)来调试和测试你的JavaScript代码。 12. **安全性**:了解基本的前端安全实践,如防止XSS(跨站脚本攻击)和CSRF(跨站请求...

    海康摄像头预览不需安装插件,支持chrome

    2. 版本检测与降级策略:在用户浏览器不支持MSE或WebRTC时,提供备用方案,如使用Flash或Silverlight的回退机制,但这些已逐渐被弃用。 3. 测试与调试:在不同版本的Chrome浏览器上进行详尽的测试,包括不同操作...

    本地局域网web端集成大华摄像头视频信号开发ocx_1.zip

    9. **测试和调试**:在开发过程中,使用Fiddler、Chrome DevTools等工具进行网络请求监控和调试,以确保视频流的正确传输和播放。 10. **性能优化**:为了提供流畅的用户体验,需要考虑带宽管理、缓冲策略、错误...

    JwZhangJie-master

    2. 媒体处理库:可能使用了如ffmpeg.js或MediaSource Extensions (MSE)等技术来实现视频流解码和播放,这使得播放器能支持多种视频格式和适应不同网络环境。 3. UI框架:为了实现美观且响应式的用户界面,项目可能...

    海康web v3.2无插件开发包 20210918

    7. **调试工具与文档**:开发包通常会附带详细的开发文档和示例代码,帮助开发者快速理解和使用提供的功能。调试工具则可以帮助开发者排查和解决在实际应用中遇到的问题。 8. **扩展性**:海康的Web无插件开发包...

    音乐导航2

    5. 工具:虽然没有明确指出具体使用了哪些工具,但根据项目内容,可能涉及的工具有文本编辑器(如Visual Studio Code或Sublime Text)用于编写代码,浏览器的开发者工具进行调试,以及可能的版本控制工具(如Git)来...

Global site tag (gtag.js) - Google Analytics