Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 添加额外的js文件会破坏jQuery IntelliSense_Javascript_Jquery_Visual Studio 2008_Intellisense - Fatal编程技术网

Javascript 添加额外的js文件会破坏jQuery IntelliSense

Javascript 添加额外的js文件会破坏jQuery IntelliSense,javascript,jquery,visual-studio-2008,intellisense,Javascript,Jquery,Visual Studio 2008,Intellisense,我一直在VS2008中使用jQueryIntelliSense,它非常棒。最近我添加了对jQueryUI的引用,从那时起,jQueryIntelliSense就消失了。我发现,一旦引用文档中的另一个.js文件,IntelliSense就会消失。有什么办法可以避免这种情况吗?很可能在现有引用的JavaScript文件中有一个bug。打开你的JS文件,一旦“Updaing JavaScript Intellisense”从Visual Studio的状态栏中消失(有一个菜单选项将强制JS Intel

我一直在VS2008中使用jQueryIntelliSense,它非常棒。最近我添加了对jQueryUI的引用,从那时起,jQueryIntelliSense就消失了。我发现,一旦引用文档中的另一个.js文件,IntelliSense就会消失。有什么办法可以避免这种情况吗?

很可能在现有引用的JavaScript文件中有一个bug。打开你的JS文件,一旦“Updaing JavaScript Intellisense”从Visual Studio的状态栏中消失(有一个菜单选项将强制JS Intellisense刷新,不记得它在哪里,我只是通过工具->选项->键盘区域创建了一个键盘快捷键)打开“错误”窗口,在警告下,您应该找到intellisense无法加载的原因

这通常是在解析其中一个文件时发现的一个bug,但是当我引用了很多文件时,我遇到了堆栈溢出

编辑:您还应确保已安装此VS修补程序:和VS 2008 SP1(先安装SP1!)。那么你只需要:

/// <reference path="/path/to/jquery-1.3.1.js" />
//

确保您在intellisense文件上维护
-vsdocs
,并且它将被自动拾取(只要它与您引用的文件位于同一文件夹中)

如果任何引用的文件中存在错误,它将断开同一文档中所有文件引用的intellisense。VisualStudio的下一个版本将在这方面更加强大。我为这种脆弱性直接道歉。我们很早就做出了一些设计决策,这使我们无法使VS9外部引用更加健壮

同时,使用以下变通方法。从Slace提供的链接安装SP1。如果您有一个名为.js的引用文件,并且在同一位置有一个名为-vsdoc.js的文件,那么js intellisense将选择-vsdoc版本。如果该脚本为空,则不会生成错误。识别导致intellisense生成失败的jquery插件,并在其旁边放置一个-vsdoc版本。您将无法获得intellisense for UI,但仍然可以获得jquery和其他可以正常工作的插件


您在vsdoc版本中输入的任何内容都将显示在intellisense中。如果愿意,您可以将要在intellisense中显示的数据结构的伪造版本放入其中。

接受的答案帮助我解决了此问题,但没有解决问题。我安装了修补程序:但仍然收到一个错误

错误:

Error updating JScript IntelliSense: D:\Dev\Test\Scripts\jQuery-1.3.2-vsdoc.js: 'jQuery.support.htmlSerialize' is null or not an object @ 1430:4
似乎是添加了以下文件而没有相应的-vsdoc.js文件导致了上述问题

<script src="../../Scripts/jquery-ui-1.7.custom.min.js" type="text/javascript"></script>


我在我的脚本文件夹中添加了一个空文件“jQuyi-Ui-1.7. UnvialVxDoc .js”,jScript智能感知问题消失了。

我根据上面的建议用一个小的扩展解决了这个问题:我的窍门是在我的页面上添加一个引用给我的jQuyYu.com库和我创建的文件的空白-vsdoc.js版本:

<script type="text/javascript" src="../../Scripts/jquery-ui-1.7.2.custom.min.js"></script>
<script type="text/javascript" src="../../Scripts/jquery-ui-1.7.2.custom.min-vsdoc.js"></script>


希望这有帮助

我想提出一个稍微好一点的解决方案。几个月前,我解决了这个问题,并为jqueryui创建了一个非常基本的vsdoc文件

太好了,调整是为每个麻烦的*.js文件创建一个空的*-vsdoc.js文件

我发现这个错误是由匿名函数引起的,例如:

(function($) {
    $.anything...;
})(jQuery);

希望这将有助于创建和JScript IntelliSense团队。

错误是“更新JScript IntelliSense:C:\Users\Brian\Documents\Visual Studio 2008\Projects\jQueryTest\jQueryTest\jquery-1.3.1-vsdoc.js时出错:'jquery.support.htmlSerialize'为空或不是对象@1418:4”我正在使用的jscript文件是jQuery.com中的jQuery和jQuery UI文件,您最好将其作为错误报告提交给MS,但我仍然无法使其正常工作。有人能在jQuery UI中使用jQuery和jQuery IntelliSense吗?@Brian-我是在寻找同一问题的解决方案时找到你的帖子的。在我的例子中,我还引用了jQueryUI中的其他模块。也许您可以检查您是否只导入了所需的js文件?您需要该引用路径做什么?我似乎通过创建一个解决方案来让它在没有它的情况下工作这是完全荒谬的,但它确实:\WTF Microsoft!!!只有在尚未安装的情况下,才需要第二个链接