Peter said:
Yes. Many people like to get on with things and finish projects so
good enough libraries are fine for them.
I think this post discounts the roles the purists play. Without the
purists who have criticized these "good enough" libraries with
behavior ranging from respectful criticism to hissy fits, these
libraries would still be "barely good enough." (Yes some would argue
they still are barely good enough or not good enough at all.) As much
as I would like to live in a civilized world with rational people, the
hissy fits may have had the most impact.
Not necessarily positive impact.
Some individuals point out shortcomings in jq. Others parrot those
points, obnoxiously.
jQuery changes.
Crediting an obnoxious parroter for changes in jq could be a post-hoc
fallacy. In fact, some small problems have gone unfixed (change
string.match -> pattern.test, in many places, to improve perf). Who do
you blame for that?
Regardless, the few small changes in jq don't change the inherent design
of it much.
It's still based on an unneeded query selector which seems to be at the
core of the "magic".
The "event registry" (if it can be so called) still uses attachEvent or
addEventListener.
There's the - attr - which still deals with property/attribute
ambiguously, and that can cause more divergence between browsers than it
solves.
It still mostly uses unqualified - document - references, so can't
generally work in frames in a lot of cases.
The animation is baked into the core of the library. Most of the time,
animation is not needed. What good is it then? When trying to debug
something it could be a distraction, being alongside code that may be
the actual source of the problem. It also takes up a small amount of
memory and download time.
When animation is used, the animation should use a single - setInterval
- not several. jQuery animation library uses multiple setInterval, and
is severely limited in its design. FWICT, it does not seem to handle
color animation and opacity is designed as one-off in the "fade" effects
only.
A well designed animation library would be like a well designed
anything: focused on one thing, extensible, and have absolutely nothing
to do with "attachEvent", "form serialization" or the mishmash things in
jquery core, few (if any) of which have anything to do with animation.
Garrett