我一直在VS2008中使用jQuery IntelliSense,它一直很棒.最近我添加了对jQuery UI的引用,从那时起,jQuery IntelliSense就消失了.我发现,一旦你在文档中引用了另一个.js文件,IntelliSense就会消失.有什么办法可以避免这个吗
如果任何引用文件中存在错误,它将破坏来自同一文档的所有文件引用的智能感知.在这方面,Visual Studio的下一个版本将更加强大.我为这种脆弱直接道歉.我们在早期做出了一些设计决策,因为我们阻止了我们使VS9外部参考更加强大.
在此期间,请使用以下解决方法.从Slace给你的链接安装SP1.如果你有一个名为.js的文件引用,并且在同一个位置有一个名为-vsdoc.js的文件,那么JS intellisense将获取-vsdoc版本.如果该脚本为空,则不会生成错误.识别导致智能感知生成失败的jquery插件,并在其旁边放置-vsdoc版本.你不会获得UI的intellisense,但你仍然会得到jquery和其他工作的插件.
你在vsdoc版本中放置的任何东西都会出现在intellisense中.如果需要,您可以放置要在intellisense中显示的数据结构的欺骗版本.
可能是其中一个次要引用的JavaScript文件中存在错误.打开你的JS文件,一旦"更新JavaScript智能感知"已经从Visual Studio的状态栏中消失了(有一个菜单选项会强制JS intellisense刷新,不记得它在哪里,我只是创建了一个键盘快捷键通过工具 - >选项 - >键盘区域)打开你的错误窗口,在警告下你应该找到智能感知无法加载的原因.
它通常是在解析其中一个文件时发现的一个错误,但是当我引用了大量文件时,我有堆栈溢出.
编辑:您还应该确保安装了此VS补丁:http://code.msdn.microsoft.com/KB958502和VS 2008 SP1(首先安装SP1!).然后你只需要:
///
确保您保留-vsdocs
intellisense文件,它将被自动拾取(只要它与您引用的文件位于同一文件夹中)
接受的答案帮助我解决了这个问题,但没有解决问题.我安装了修补程序:http://code.msdn.microsoft.com/KB958502但仍然收到错误.
错误:
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文件的follwing文件会导致上述问题.
我在我的脚本文件夹中添加了一个空文件"jquery-ui-1.7.custom.min-vsdoc.js",并且Jscript Intellisense问题消失了.