当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 让VS2008对JQuery语法的智能感知更完美一点

ASP.NET
C# Quoted-Printable编码、解码
asp.net Google的translate工具翻译 API
.NET读取所有目录下文件正则匹配文本电子邮件
asp.net 半角全角转化工具
AjaxControlToolKit 显示浏览者本地语言的方法
asp.net HTML文件上传标签
ASP.NET 绑定DataSet中的多个表
ASP.NET 重定向的几种方法小结
Asp.Net 重定向必须要知道的一些资料
ASP.NET 导出到Excel时保留换行的代码
Asp.Net Cache缓存使用代码
document.getElementsByName和document.getElementById 在IE与FF中不同实现
GridView单元格合并
asp.net 大文件上传控件
asp.net 日期函数 某月的第一天和最后一天的日期
asp.net 时间类 一周的周一和周末的日期
C# javaScript函数的相互调用
asp.net membership 密码重设
"虚拟路径"..."映射到另一个应用程序,这是不允许的!
如何传值在2个页面之间 要求不刷新父页面,并且不能用Querystring传值

ASP.NET 中的 让VS2008对JQuery语法的智能感知更完美一点


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-11   浏览: 150 ::
收藏到网摘: n/a

上周Rich Strahl的POST中提到一个新发布的VS2008 hotfix修复了VS2008对Javascript智能感知的一些BUG,fixed之后可以让VS2008对JQuery提供智能感知,让我等JQuery fans欣喜了一阵子。可仔细一看,还需要另外给JQuery添加上XML comments才行 :( 丧气了...   一、
刚才看到已经有快手的牛人做完了这项工作,现在可以直接下载(http://data.lancefisher.net//upload/tech/20091011/20091011143703_69adc1e107f7f7d035d7baf04342e1ca.js)回来用了。
这样引用就行了
<script src="/upload/tech/20091011/20091011143703_69adc1e107f7f7d035d7baf04342e1ca.js" type="text/javascript"></script>
如果是在独立的.js文件中需要JQuery智能提示,那么在文件开始加上这行
/// <reference path="/upload/tech/20091011/20091011143703_69adc1e107f7f7d035d7baf04342e1ca.js" />
就OK了。
但这个JS是未压缩版的jqery1.2.3,加上XML comments,有120K之巨,开发时用就行了,部署的时候可以换个pack版本的。
不过似乎VS2008对JS的智能感知还有点不足的地方,比如js中的重载函数就不能提供很好的提示支持...希望能再有改进
二、
另外,还有个JQuery XML comments的生成器JQuery IntelliSense Header Generator,这个生成器是根据JQuery官方提供的XML DOC来生成JQuery的函数签名和XML comments。注意,这里只生成函数签名,没有具体的实现。如果嫌第一种方法部署麻烦,那么就可以使用这个签名JS了,我们可以把脚本全部放到独立的.js文件中,然后在js中reference 这个假的JQuery,而在.aspx中则引用真正Pack版的jquery。
这个生成器有个BUG,因为jquery xml doc有些函数的说明中有些有回车符,而这个生成器没有做处理,导致生成的签名JS有误。
我修正了这个BUG,需要的同学可以点击这里下载。记住:这个生成器只生成jq函数签名和XML comments;这个生成器是根据JQuery官方的的XML API doc生成的,也就是说如果以后有版的JQuery API doc出来,你只要把它下载回来覆盖掉这个旧的就行了。
这个生成器生成的签名有个比较好的地方,就是它把重载方法的comments都放到一起了,也就是vs2008的智能提示中可以看到几个不同重载的comments.
出处:软晨学习网

下面看下效果图:

image

图1

image

图2

image_thumb_2

图3

补充,如果修改脚本文件后,而VS2008的智能提示没有及时更新,那么可以使用快捷键Ctrl+Shift+J来更新一下。

image

图4