The title is just to get your attention, please dont take it serious or be offended. I need a serious answer to my question and scenario. Thank you. Ok, I have been learning the Javascript coding language. I have learned numbers, strings, booleans, variables, if/else statements, return keywords and functions all to improve functionality and usability of websites that I build. But, I'm like what the "hell". It doesn't feel like I can use any of this to help with websites. Like when am I going to start learning how to manipulate HTML and CSS elements using Javascript. Like make things COOL happen. Then I started looking into JQuery and it starts with HTML and CSS manipulation. Exactly what I've been looking for? Like the COOL stuff? Any suggestions, should I abandon Javascript and study JQuery. Please share you thoughts and experience. Regards, Chris
While I'm one of those who like jQuery, it is a quite heavy framework. Usually, normal javascript is the way to go. Some minor helper functions will make your life easier.
Years passed. I feel like jQuery was built while CSS still didn't have enough horsepower to drive all the crazy stuff you're talking about. Now, depending on what exactly you're implying, CSS3 animations are hardware accelerated and they give you a way smoother experience. On the orher hand, if you're strictly speaking about some classes being changed or some events to attach then I'd go back to the JS as having a 90kb js file just to be able to attach some click event handlers is quite non practical. Even though you can customize the build and get rid of the useless bits. If you really want the feel the crazyness and freedom for your site, take a look at what I think is the most simple and intuitive two-way data binding library, RactiveJS. It is really to be learned in 60 seconds. I have literally got used to the basic usage and fell in love after finishing the interactive tutorial (which is made in the same way if you're wondering). The sole reason I would still be using jQuery is for it's selector ability, it's ajax feature and it's class swapping skills when working on really small apps. But, same can be achieved by putting min.js, classie.js and your own ajax method into a single javascript file and still have a ten times smaller fingerprint
I use jQuery for it's extensive plugin-library, making specific tasks a lot easier than coding it from scratch, like drag-and-drop, sorting, animation, cross-browser compatibility, simple selectors and built-in handlers/classes, ajax and a few other standards/built-ins.
Of course a library's ecosystem matters when it comes to what you're attempting to create. That's why I said it mostly depends on what he's doing. And still, most of the plugins have a standalone version as well, which doesn't look that pretty but can be used as well without jQuery if not necessarily needed.
You can use/study jQuery, or other frameworks\library. But best way - work with real cases. Just google what you need and use this with understanding. This is incredible improve your skill.