根据环境有条件地选择jquery的版本

时间:2009-01-27 05:03:29

标签: jquery visual-studio-2008 intellisense

我的母版页中有2个对jQuery的引用,当前为生产版本配置了

<script type="text/javascript"
 src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js">
</script>
<%--<script type="text/javascript" src="../Scripts/jquery-vsdoc.js"></script>--%>

当我开发时,我取消注释vsdoc版本,以便在VS2008中获得智能感知,然后在部署之前将其切换回来 - 除了我忘记的时间。有没有办法在开发中使用intellisense并在prod中使用不需要编辑部署的Google CDN?即依赖环境的条件包含...

编辑: 如果我指定此文件:http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js作为我的JavaScript文件,那么VS2008(带补丁)将查找此文件:http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min-vsdoc.js(在.js之前使用-vsdoc)用于intellisense。问题是Google没有在该位置提供第二个命名文件。

另一个可接受的答案是这个问题的答案:“我如何让Google在http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/放置一个jquery.min-vsdoc.js文件?”

4 个答案:

答案 0 :(得分:5)

suggested workaround(因为Google不托管文档)是以永远不会包含的方式引用文档脚本,例如

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

OR

<asp:PlaceHolder runat="server" Visible="False">
    <script type="text/javascript" src="../Scripts/jquery-vsdoc.js"></script>
</asp:PlaceHolder>

答案 1 :(得分:1)

Visual Studio应自动查找intellisense的vsdoc。

如果页面上的脚本名为“jquery.min.js”,那么visual studio将在同一位置查找“jquery.min-vsdoc.js”。

你需要有这个修补程序:

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

答案 2 :(得分:0)

这是Scoot Gu在JQuery intellisense上的blog post 只是想指向这个博客,因为它更详尽,值得一读。

除此之外,我认为John Boker已回答了这个问题。

答案 3 :(得分:0)

如果您正在寻找与VS2008兼容的解决方案,请使用以下内容:

<%= "<script type='text/jscript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js'></script>" %>
<% /* %><script type="text/javascript" src="../../App_Data/jquery-1.3.2.js"></script><% */ %>

在此处发表博文:jQuery hosted on Google's CDN with IntelliSense