我在js文件中添加了vsdoc jquery引用:
/// <reference path="../jquery-1.4.1.vsdoc.js" />
这很好用,但是一旦我在里面写一个没有冲突的包装器......
(function ($) {
...here...
})(jQuery);
... IntelliSense不起作用。
为什么会这样,有什么方法可以解决这个问题?
答案 0 :(得分:10)
尝试添加&lt; param /&gt;包装函数开头的标记:
/// <reference path="../jquery-1.4.1.vsdoc.js" />
(function($) { /// <param name="$" type="jQuery" />
...
})(jQuery);
答案 1 :(得分:1)
对于Visual Studio 2008,当我写
时/// <reference path="../jquery-1.4.1.vsdoc.js" />
<intellisense works here>
(function ($) { /// <param name="$" type="jQuery" />
<intellisense doesn't work here>
})(jQuery);
uhleeka的回答是否适用于VS2010,而不是2008年?是否有更新2010年更新了参数?
编辑:我应该澄清一下,它在无包装内部有效但不完全。 在包装器之外,我可以智能感知$ .getJSON,我不能。在我关闭我的选择器之后(例如,$('#test')。一个列表从_load开始弹出,在我关闭选择器之后,在包装器中没有列表出现。只是几个不同行为的例子。
是否有人就没有冲突包装器提供一致的功能建议?
答案 2 :(得分:0)
/// <reference path="../jquery-1.4.1.js" />
答案 3 :(得分:0)
如果使用jQuery()而不是$(),则intellisense可以正常工作。
jQuery("#con").click ....
var element = jQuery(this)....
答案 4 :(得分:0)
确保您的jquery intellisense参考文件是脚本文件中的第一项。
如果您在参考线之前有评论,则无法在
中使用文件: 胡说 **
这样做 文件: “ 胡说
答案 5 :(得分:0)
在闭包中使用/// <param name="$" type="jQuery" />
作为第一行。
它在Visual Studio 2010 SP1中对我有用。