VS 2008中的jQuery Intellisense

news/2024/7/11 1:00:06 标签: jquery, javascript, asp.net, express, powerpoint, json

【原文地址】jQuery Intellisense in VS 2008
【原文发表日期】 Friday, November 21, 2008 2:07 AM

上个月,我在博客里宣布了微软将对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文件:

jquerynov/step1.png" />

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

jquerynov/step2.png" />

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

jquerynov/step3.png" />

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

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

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

jquerynov/step4.png" />

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

jquerynov/step5.png" /> 

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

jquerynov/step6.png" />

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

jquerynov/step7.png" />

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

jquerynov/step8.png" />

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

jquerynov/step10.png" />

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

JavaScript Intellisense 技巧和诀窍

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

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

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

jquerynov/step11.png" />

在运行时,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


http://www.niftyadmin.cn/n/1412166.html

相关文章

只用来保存JQuery lightbox图片用的

发现在cnblogs不能上传图片&#xff0c;所以得通过这个方法&#xff0c;上传JQuery插件LightBox所用到的图片 转载于:https://www.cnblogs.com/samlin/articles/1365365.html

jquery写的弹出层

index.html Html代码 <body> <div class"field"><input type"checkbox" id"choose"/><label for"choose">查看历史记录</label><select><option>ie6</option></select></d…

使用OpenSSL生成证书-nginx

为什么80%的码农都做不了架构师&#xff1f;>>> 使用OpenSSL生成证书 1、生成RSA密钥的方法openssl genrsa -des3 -out privkey.pem 2048 这个命令会生成一个2048位的密钥&#xff0c;同时有一个des3方法加密的密码&#xff0c;如果你不想要每次都输入密码&#xf…

Spring Boot中@Async的作用

在Spring中&#xff0c;Async这个注解用于标记的异步的方法。方法上一旦标记了这个方法&#xff0c;当其它线程调用这个方法时&#xff0c;就会开启一个新的线程去异步处理业务逻辑。 此注解的使用说明&#xff1a; 1、此注解可以用在方法上&#xff0c;也可以用在类上&#xf…

如何清空Visual Studio 2003/2005/2008中的最近项目列表

Visual Studio使用一段时间后&#xff0c;在“文件”-“最近的项目”及“最近的文件”列表中会产生大量的选项。 一些无关紧要的项目或文件反而使自己无法迅速定位经常使用的项目。 因些经常清理Visual Studio 2003/2005/2008中的”-“最近的项目”及“最近的文件”列表还是很…

HttpClient的userAgent和refer问题

HttpClient本质是模拟浏览器去请求网址&#xff0c;获取请求response。 为了更真实的模拟浏览器&#xff0c;不被限制&#xff0c;需要设置一些请求header。 如果是爬虫的话&#xff0c;老虑的会更多些&#xff0c;爬取网站在HttpClient中设置Host,Referer,User-Agent,Connecti…

PetShop 4.0 官方详解

适用于&#xff1a;Microsoft .NET Framework 2.0Microsoft Visual Studio 2005Microsoft Windows Server 2003Microsoft InterNET Information ServicesMicrosoft Message QueuingMicrosoft SQL Server 2005Oracle 10G Database 摘要&#xff1a;.NET Pet Shop 应用程序的设计…

MongoDB之TextSearch简介

MongoDB之TextSearch简介 MongoDB支持对文本内容执行文本搜索操作&#xff0c;其提供了索引text index和查询操作$text来完成文本搜索功能。下面我们通过一个简单的例子来体验一下MongoDB提供的全文检索功能。 1.新建blogs collection&#xff0c;并插入如下的document。 db.b…