A big, big drawback is its abstraction hides the "ugly parts" of JavaScript, therefore making learning JS a lot more difficult. This is a problem that plagues the JS community. What ends up happening is you have designers/developers that can do simple rollovers and slideshows, but run into big problems once real DOM manipulation comes into play.
Another drawback is not just size, but how amorphous jQuery really is. With each new browser (most notably Internet Explorer), a fair amount of work is being done behind the scenes to expand the codebase. This was most evident with IE8, in which a fair amount of jQuery had to be re-written to at least comply with the newest version of IE. The result is you have a giant collection of methods and properties (over 200KB since about jQuery 1.5). Even with a wide array of options to compress/cache the files, you're still going to experience a decent amount of load time (a few seconds on a good connection).
One of those options is through Google's Content Distribution Network (CDN). It can cache jQuery for you and lead to quicker load times. However, you're now relying on two sources to operate flawlessly. Recently, Google flubbed one of the new (>= 1.5) versions of jQuery. This led to some incompatibilities for a few hours and posed problems for jQueryUI and various plugins. As I said earlier, you're relying on two sources to always work. Saving your own localized version can mitigate this risk.
I think given proper planning and usage, it can be a boon to most projects. However, I do emphasize that proper planning needs to be used. First ask yourself (or your team) if flashy fades and pseudo-tweens are really required for your project. These are the types of things that should be added last in order to maximize efficiency.
Those are the problems I have on my mind right now. Hopefully, this will be of some aid to you in the future.
manpreet
Best Answer
2 years ago
I have heard lots and lots of good things for jQuery but what are some of the drawbacks with current version of jQuery and what features you want in next release of jQuery ?