【转】将 jQuery IntelliSense整合到Visual Studio方法-阿里云开发者社区

开发者社区> 秋天风景> 正文

【转】将 jQuery IntelliSense整合到Visual Studio方法

简介: 上个月,我在博客里宣布了微软将对jQuery提供支持。在过去的几个星期里,我们与jQuery开发团队合作,在Studio 2008 和 Visual Web Developer 2008 Express版本(免费的)中增加了很好的jQuery intellisense支持。
+关注继续查看

上个月,我在博客里宣布了微软将对jQuery提供支持。在过去的几个星期里,我们与jQuery开发团队合作,在Studio 2008 和 Visual Web Developer 2008 Express版本(免费的)中增加了很好的jQuery intellisense支持。现在这个支持可以下载使用了。

在VS 2008中启用jQuery Intellisense的步骤

要在VS中启用jQuery的intellisense完成,你要遵循三个步骤:

第一步: 安装VS 2008 SP1

VS 2008 SP1 在Visual Studio中加了更丰富的JavaScript intellisense支持,对很大部分的JavaScript库加了代码完成支持。

你可以在这里下载VS 2008 SP1 和 Visual Web Developer 2008 Express SP1。

第二步: 安装VS 2008 Patch KB958502以支持"-vsdoc.js"Intellisense文件

2 个星期前,我们发布了一个补丁,你可以将其运用到VS 2008 SP1 和 VWD 2008 Express SP1版本上,该补丁会导致Visual Studio在一个JavaScript库被引用时,查找是否存在一个可选的"-vsdoc.js"文件,如果存在的话,就用它来驱动 JavaScript intellisense引擎。

这些加了注释的"-vsdoc.js"文件可以包含对JavaScript方法提供了帮助文档的XML注释,以及对无法自动推断出的动态JavaScript签名的另外的代码intellisense提示。你可以在这里了解该补丁的详情。你可以在这里免费下载该补丁。

第三步: 下载jQuery-vsdoc.js文件

我们与jQuery开发团队合作编写了一个jQuery-vsdoc.js文件,该文件对串连的jQuery selector方法的JavaScript intellisense提供了帮助注释和支持。你可以在jQuery.com网站的官方下载网页上下载jQuery和jQuery-vsdoc文件:

把jquery-vsdoc.js保存到你项目中jquery.js文件所在的同一个目录中(同时确认它的命名前缀与jquery文件名匹配):

然后你可以象这样,通过一个html <script/>元素来引用标准的jquery文件:

或者也可以使用<asp:scriptmanager/> 控件来引用它,或者在一个单独的.js文件的顶部加 /// <reference/> 注释来引用它:

在完成之后,VS就会在你引用的脚本文件所在的同一个目录中寻找一个-vsdoc.js文件,如果找到的话,就会用它来做帮助和intellisense。

例如,我们可以使用jQuery来做一个基于JSON的get请求,得到该方法的intellisense(挂在$.之后):

以及 $.getJSON()方法参数的帮助/intellisense:

 

如果你在方法调用中嵌套回调函数的话,intellisense依旧会工作。例如,我们也许想对从服务器返回的每个JSON对象进行迭代:

对每个项,我们可以执行另一个嵌套的回调函数:

我们可以使用each回调函数动态地往列表中附加一个新图片(图片的src属性将指向返回的JSON媒体图片的URL):

然后在每个动态生成的图片上,我们可以连接一个点击事件处理函数,在点击时,会通过动画效果来消失:

注意jQuery intellisense在我们代码的每一个层次都很干净地做了提示。

JavaScript Intellisense 技巧和诀窍

Web工具开发团队的Jeff King本星期早先时候撰写了一个很棒的贴子,对有关VS 2008中JavaScript intellisense工作原理的若干常见的问题做了回答,我高度推荐阅读该文。

他 谈到的一个诀窍(我要在这里做示范)是在你想要在用户控件/部分(.ascx文件)中使用JavaScript intellisense时可以使用的一个技术。经常地,你不想要在这些文件中包括对JavaScript库的<script src=""/> 引用,这些引用往往是存在于使用了用户控件的母版页或内容网页之上的。当然,问题是,你这么做的话,在默认情形下VS是无法知道用户控件中用到了这个脚 本,因此不会为你提供intellisense 。

启用intellisense的一个方法是,在你的用户控件中加<script src=""/>元素,但在其周围加一个服务器端的<% if %> 块,在运行时其值总是为false:

在运行时,ASP.NET不会显示这个脚本标识(因为是包含在一个总是为false的if块中的),但是,VS却会运算这个<script/>标识,在用户控件中为它提供intellisense。在象用户控件这样的场景下,这是个非常有用的技术。Jeff在他的FAQ贴子原先的jQuery intellisense贴子里还有更多细节。Rick Strahl在这里也有一篇很好的贴子,是关于使用jQuery intellisense的。

更多信息

想进一步了解jQuery的话,我建议观看Stephen Walther在PDC大会上做的《ASP.NET和jQuery》讲座。点击这里下载他的代码例程和 powerpoint讲义。

Rick Strahl也有一篇非常棒的《Introduction to jQuery》文章,讨论如何在 ASP.NET使用jQuery。Karl Seguin 在这里这里有2篇非常好的jQuery基础教程贴子,对如何使用jQuery的一些基本知识提供了比较简短的的概述。

我也高度推荐《 jQuery in Action》一书。

希望本文对你有所帮助,

Scott
翻译:
Scott Guthrie 博客中文版

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
来更快的Maven了,我的天,速度提升了8倍!(1)
更快的Maven来了,我的天,速度提升了8倍!(1)
55 0
微服务架构 | 2.2 Alibaba Nacos 的统一配置管理
Nacos 致力于解决微服务中的统一配置、服务注册与发现等问题。它提供了一组简单易用的特性集,帮助开发者快速实现动态服务发现、服务配置、服务元数据及流量管理;
7 0
更快的Maven构建工具mvnd和Gradle哪个性能更好?(1)
更快的Maven构建工具mvnd和Gradle哪个性能更好?(1)
10 0
更快的Maven来了,我的天,速度提升了8倍!(3)
更快的Maven来了,我的天,速度提升了8倍!(3)
42 0
C 语言项目_项目流程|学习笔记
快速学习 C 语言项目_项目流程
6 0
mysql事务隔离级别
mysql事务隔离级别
11 0
更快的Maven构建工具mvnd和Gradle哪个性能更好?(3)
更快的Maven构建工具mvnd和Gradle哪个性能更好?(3)
44 0
python测试框架-pytest
python测试框架-pytest 一、pytest 介绍、运行、参数化和数据驱动、Fixture pytest安装与介绍 官网 : pip install -U pytest 查看版本号:pytest --version 为何选择pytest 兼容unittest 定制化插件开发 pycharm 配置github VSC--Git--Remotes... pycharm pytest 配置 settings--搜索pytest--Python integrated Tools--testing--选择pytest:根据黄色叹号fix安装pytest安装到环境
16 0
常量和变量_C语言简介|学习笔记
快速学习常量和变量_C语言简介
4 0
前后端分离 -- 深入浅出 Spring Boot + Vue 实现工程项目进度管理系统 Vue不过如此~
前后端分离 -- 深入浅出 Spring Boot + Vue 实现工程项目进度管理系统 Vue不过如此~
10 0
+关注
秋天风景
既然选择了远方,便只顾风雨兼程。
2394
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载