Uh, I'm sure modern jQuery will detect and use the capabilities the author attributes to "HTML5 [...] and ECMAScript 5", continuing to insulate developers from having to learn the (annoying) vagaries of differently implemented versions of the specifications in the various browsers that need to be supported.
jQuery is far closer to a "crutch" than it is a "power tool".
It may look like a "power tool" in the sense that it made certain awkward things much easier to do, but that's only true if you don't look at the bigger picture.
Taking a wider view, it becomes obvious that jQuery's usefulness arises mainly because the DOM and client-side web development as a whole is so broken in so many critical ways.
It indirectly offers what the browser developers should have directly offered many, many years ago. So it's clearly more of a "crutch" to help web developers hobble around the various browser-imposed limitations than it is a "power tool".
As some effort is made toward clearing up these browser limitations, jQuery's true nature as a "crutch" does become more obvious.
I'm not a Javascript developer - the main reason I got into using jQuery was to not have to deal with cross-browser idiosyncrasies. Same reason I started using CSS preprocessors.
jQuery will stay around (or something similar to jQuery) for the very simple reason of: it's quicker to write. jQuery will change with the times, just like in 2.0 where old browsers aren't supported, jQuery might become just a simple API to beautify `querySelectorAll('.fruit .banana')` to `$('.fruit .banana')`. It accomplishes the same thing in a cleaner syntax.
Also the plugin system ensures that there is one system to work with. I pretty much know how a jQ plugin is going to work before I even read the documentation.
I don't think jQuery will get dropped. It's more likely more and more parts of jQuery will be replaced by native components.
Also, remember jQuery is not the first css selector library. What made it popular is not because of the selectors, but because of its large plugin community.
Unless I cut off blood flow to my brain while napping, the author is not understanding prototype methods. The code below has nothing to do with the prototypal inheritance method as asserted in the Class manipulation subsection:
$('div').addClass('myClass');
Also, this could be reframed as "Is it time to drop jQuery 1.x and move to jQuery 2.x?" because if you still need jQuery 1.x, you're going to have a bad time writing vanilla JS.
9 comments
[ 2.1 ms ] story [ 32.2 ms ] threadIt may look like a "power tool" in the sense that it made certain awkward things much easier to do, but that's only true if you don't look at the bigger picture.
Taking a wider view, it becomes obvious that jQuery's usefulness arises mainly because the DOM and client-side web development as a whole is so broken in so many critical ways.
It indirectly offers what the browser developers should have directly offered many, many years ago. So it's clearly more of a "crutch" to help web developers hobble around the various browser-imposed limitations than it is a "power tool".
As some effort is made toward clearing up these browser limitations, jQuery's true nature as a "crutch" does become more obvious.
Also the plugin system ensures that there is one system to work with. I pretty much know how a jQ plugin is going to work before I even read the documentation.
Also, remember jQuery is not the first css selector library. What made it popular is not because of the selectors, but because of its large plugin community.
$('div').addClass('myClass');
Also, this could be reframed as "Is it time to drop jQuery 1.x and move to jQuery 2.x?" because if you still need jQuery 1.x, you're going to have a bad time writing vanilla JS.