jQuery vs. Scriptaculous
November 16, 2007 3:49 PM   Subscribe

JavaScript: jQuery vs Scriptaculous - Which is currently the favorite amongst developers?

I'm about to implement a JavaScript framework on a large project. I have years and years of experience with JavaScript, DOM, AJAX, etc, but this will be my first time using a JavaScript framework. Finally making the jump in the hopes that it will make my life easier.

Which of the big-boys are favorited amongst developers these days? It seems like it's currently down to jQuery vs Scriptaculous, but I'm open to other suggestions. I realize that it comes down largely to personal preference, but I'd mainly like to know the pluses, minuses, and differences between the two. Performance and Ease-of-Use are top priorities. Please no fanboy flamewars, thx. :)
posted by afx114 to Computers & Internet (12 answers total) 6 users marked this as a favorite
You're not including prototype.js, or is that subtly different?
posted by rhizome at 4:01 PM on November 16, 2007

You can use both. From my perspective, jQuery is excellent for “low-level” DOM maniplation, whereas script.aculo.us is good for whizzy UI effects.
posted by ijoshua at 4:02 PM on November 16, 2007

Response by poster: You're not including prototype.js, or is that subtly different?

Scriptaculous is built upon Prototype based on my readings. So I guess you can substitute 'Prototype' for 'Scriptaculous' in my original question.
posted by afx114 at 4:04 PM on November 16, 2007

I quite prefer Mootools personally, but jQuery seems to be in vogue recently.
posted by icebourg at 4:17 PM on November 16, 2007

I just dove into this same analysis recently. (jQuery vs prototype)

In my experience, prototype is more robust and jQuery is more elegant. But I don't think either wins a knock-out punch.

Documentation on jquery is better imho so I prefer it. Mootools is also nice.
posted by jragon at 4:29 PM on November 16, 2007

Prototype will win out with the Rails crowd because of it's close ties to that platform. But for everyone else, jQuery is winning. Google used it on a redesign of Google Code, and the guy from jQuery is big in Mozilla.
posted by tmcw at 5:35 PM on November 16, 2007

Yeah, really this question should be "Prototype/Scriptaculous vs. jQuery/jQuery UI," as the former element in each pair is the framework upon which the interface widgets are based. For my money I'd go with jQuery, partially because of the number of parties now lining up to support it (as stated above) and partially because I think jQuery's smaller and slightly faster than Prototype.

As to whether you should bother with Scriptaculous or jQuery UI, in my mind the jury's still deliberating on that one. The UI widgets both packages offer are quite nice, but they're also responsible for some serious browser load lag on my system (as well as the occasional animation stutter). If you do decide to use them, I'd recommend sticking to basic appear/disappear transition effects and staying away from the Powerpoint-type effects like fades and wipes.

Personally I don't even bother with jQuery UI at all, preferring to write my own low-impact interfaces when necessary. But then this fits with my web design philosophy, which is also pretty light on images and can be a bit dull, so you'll have to decide for yourself what you're willing to live with in terms of complexity and performance.
posted by chrominance at 5:46 PM on November 16, 2007

What, no YUI?
posted by influx at 5:50 AM on November 17, 2007

If the issues are performance vs. ease of use, I think it's a split decision: for my money, prototype is easier to pick up, but jquery is demonstrably faster.

But I recommend jquery to you, since the learning curve isn't that much different, and prototype+scriptaculous can get awfully bloated.
posted by Hildago at 10:07 AM on November 17, 2007

i've used mootools, jquery, and dojo (EEEEEEEWWWWWW) on projects.

obviously, I do not recommend dojo at all (their docs page used to crash my browser, which was pretty awesome, and their holy grail seems to be fisheye menus, which have no purpose on the web). I actually stopped using dojo in the middle of a project and rewrote everything in mootools because it was simply awful.

I slightly prefer jquery at this point, because there seems to be a larger community. this means more drop-in plugs for stuff i don't feel like writing. the mootools community is fairly limited (well, was -- the last big mootools project i did was 6 months ago) and the core developers are ... let's say curmudgeonly -- so it may not be the best choice if you are new to javascript (although i see that you are -- so this may be a good choice because you'll have less newbie forum cruft to sift through). Additionally (and this may be fixed), there were a couple of annoying bugs in the framework that could bite you in the ass -- whereas everything i've done with jquery has 'just worked'. There are several upsides to mootools, including its small footprint and nicely organized documentation and community (in contrast to jquery, which seems a little all over the place to me).

if you do end up using jquery, i think you will find the Visual JQuery doc reference very useful.

oh yeah, you should look into YUI too -- i've heard good things.
posted by fishfucker at 10:37 AM on November 17, 2007

I'd really give a second look to Dojo and YUI. Both are best known for their control libraries, but include fantastic general-purpose libraries (for things like animation, drag-and-drop, async requests, DOM manipulation, simplified inheritance, etc). I personally prefer YUI, mainly because the idea of filling my HTML with non-standard attributes rubs me the wrong way, and YUI has better docs. About your picks:

I really don't like Scriptaculous- the idea of providing a handful of pre-chosen effects, with no facilities for generating your own, strikes me as wrongheaded... maybe ok for someone that knows virtually nothing about javascript or CSS, but needlessly constraining otherwise. The remainder of the toolkit- basically drag-and-drop, and an autocomplete control, isn't impressive or paticularly powerful compared to the implementations of those features in competing packages. Dojo and YUI both have great, easy-to-use animation libraries (I prefer YUI's because of it's surprisingly attractive "easing" mechanism).

I don't know jQuery that well, but its raison d'etre, powerful DOM querying (based on CSS3, I think), has recently gotten some competition too, via Dojo's query library (just as powerful, and even faster, I believe) and Domquery (standalone, but linked to YUI). jquery also has a plugin system for controls and other stuff that I know nothing about, but I doubt that its breadth or maturity compares to Dojo or YUI.
posted by gsteff at 4:22 PM on November 17, 2007

Just popping in really late to say that jQuery's breadth comes from its plugins, so you have the advantage of including just as much as you want and ignoring features you don't need. I use jQuery all the time and I'm a big fan. Once you get accustomed to chaining it becomes second nature and you start wanting to do it all the time; it saves a lot of typing. I'm not really clear on what the use of "maturity" is. jQuery is very stable and reliable and has an excellent user base.
posted by Deathalicious at 3:04 PM on September 19, 2008

« Older Should I sell it or keep it?   |   How do you make a subdomain forward to a different... Newer »
This thread is closed to new comments.