I tried to ditch jQuery a couple of times, but always coming back. The reasons I dislike it:
* Stupid API.
* Stupid API changes.
* Stupid API documentation.
* Plugins are minefield.
The recent standardization of event handler attachments (see `.on`) is a lot saner than it used to be, but I believe it is still not there where it should be. (I don't know that place, otherwise I'd have written my own library.)
However, the jQuery ecosystem is hard to leave because
* Monopoly in terms of plugins,
* Already cached everywhere (from Google CDN),
* Solves all cross-platform issues.
There are a few other bits like the culture of short commands because of chained functions, but I personally find that a very minor detail.
I also happen to like the author's ongoing experiments with performance improvements.
jQuery is a DOM wrapper. MooTools is a JavaScript "extension." (Note the quotes and please don't crucify me)
What that basically means is that jQuery makes working with the DOM tolerable and MooTools makes working with JavaScript tolerable. I, personally, have issues with the DOM but no issues with JavaScript, so I opt for jQuery.
However, the jQuery ecosystem is hard to leave because
There are a few other bits like the culture of short commands because of chained functions, but I personally find that a very minor detail.I also happen to like the author's ongoing experiments with performance improvements.