如何在Visual Studio 2008中获得JavaScript / jQuery Intellisense?


Answers:


87

在外部JavaScript文件的顶部,添加以下内容:

/// <reference path="jQuery.js"/>

确保相对于文件夹结构中文件的位置,正确的路径。

同样,所有引用都必须位于文件顶部,在包含注释的其他任何文本之前-实际上,这是文件中的第一件事。希望将来版本的Visual Studio不管文件中的位置如何都可以工作,或者它们可能会做完全不同的事情...

一旦你做到这一点,并保存的文件,命中Ctrl+ Shift+ J强制Visual Studio来更新智能感知。


1
没问题,很高兴能为您服务!我认为,对JavaScript的Intellisense支持还有很长的路要走,即使使用SP1,事情仍然有些棘手。哦,好吧,至少他们正在做些帮助!:)
Jason Bunting

仅供参考:我更新了此标题,以反映以下事实,即它并非仅针对jQuery,因为实际上并非如此。谢谢你的提问!
詹森·邦廷

另外,请注意,请确保使用PATH属性而不是NAME。我看到了很多带有w:/// <reference name =“ jQuery.js” />(INCORRECT)的示例,而不是/// <reference path =“ jQuery.js” />(CORRECT)
Nathan

是的-嗯,这就是我的代码所指示的。我错过了什么?
詹森·邦廷

1
shift-control-j将强制重新计算智能感知。

15

有一个正式支持的Visual Studio 2008的jQuery文档JavaScript文件。在Microsoft发布可以更充分解决该问题的修补程序之前,该文件只是一个临时修复程序。

嵌入ASPX中:

<% if (false) { %>
    <script src="jquery-1.2.6-vsdoc.js" type="text/javascript"></script>
<% } %>

嵌入JavaScript:

/// <reference path="jquery-1.2.6-vsdoc.js" />

在这里拾取:jquery-1.2.6-vsdoc.js

参考文献


这是使它在VS 2010 Ultimate中对我有用的唯一选项。
阿列克·戴维斯

8

您需要查看以下链接:

http://blogs.ipona.com/james/archive/2008/02/15/JQuery-IntelliSense-in-Visual-Studio-2008.aspx

更新:有一个新的Visual Studio 2008 HotFix和一个新的jQuery Intellisense文档文件,它将完整的jQuery Intellisense带到VS'08。以下是获得这两个链接:

http://blogs.msdn.com/webdevtools/archive/2008/11/07/hotfix-to-enable-vsdoc-js-intellisense-doc-files-is-now-available.aspx

http://blogs.msdn.com/webdevtools/archive/2008/10/28/rich-intellisense-for-jquery.aspx


如果我能给你10票,我会。此处引用的以编程方式生成的仅智能感知文件将jQuery智能感知从近乎无用变为必不可少。优秀!
赫尔·卡迪尔

3

对于嵌入式JavaScript,请使用:

/// <参考路径=“〜\ js \ jquery-vsdoc.js” />

注意背部斜线。

这将不起作用:

/// <参考路径=“〜/ js / jquery-vsdoc.js” />


2

您实际上不需要引用“ -vsdoc”版本。如果将jquery-1.2.6-vsdoc.js与jquery-1.2.6.js放在同一目录中,则Visual Studio将知道隐蔽对jquery-1.2.6-vsdoc的jquery-1.2.6.js引用。 js。

我认为这实际上适用于任何文件。

嗯...这为该网站上的另一个问题提供了一个很好的解决方法...

编辑:此功能仅适用于VS2008 Service Pack 1。


看来我个人必须在引用中保留“ -vsdoc”才能使其正常工作...我正在将VS2008与SP 1配合使用。(是的,它们在同一目录中。)也许我需要看看那些上面的Chris Pietschmann建议的修补程序?
2009年

克里斯是对的。“ vsdoc”功能已与他在上面引用的修补程序一起添加。
艾伦·奥兰兹

2

如果仅出于智能感知目的在源代码中包含带注释的jQuery文件,建议您在编译时利用预处理程序指令将其从视图中删除。翼:

<% #if (false) %>
  <!-- This block is here for jquery intellisense only.  It will be removed by the compiler! -->
  <script type="text/javascript" src="Scripts/jquery-1.3.2-vsdoc.js"></script>
<% #endif %>

然后在您的代码后面,您可以真正引用jQuery。使用Google AJAX库API时,这很方便,因为您可以获得Google提供给您的所有好处以及智能感知。

以下是使用Libraries API的示例:

<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
   google.load("jquery", "1.3.2", { uncompressed: false });
</script>


0

如果要从Microsoft CDN中提取Intellisense文件,可以使用:

/// <reference path="http://ajax.microsoft.com/ajax/jQuery/jquery-1.4.1-vsdoc.js" />

0

确保您没有使用最小化的jQuery文件。

在将JavaScript文件添加到项目后,使用Ctrl+ Shift+ J使其工作。


我一直在努力使智能感知工作,直到我发现这一点,因为我使用的是缩小版,想知道为什么它对我不起作用。
RKP
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.