Channels ▼

Mike Riley

Dr. Dobb's Bloggers

jQuery Novice to Ninja Book Review

May 10, 2010

jQuery has become the one of the must use/must know Javascript libraries of many Web 2.x domains. This remarkably compact .js file contains plenty of dynamic presentation layer goodness, but learning to use it well beyond the numerous example snippets on the web is a necessity if your web project depends on it. Several books are already on the market, and publisher Sitepoint recently joined the fray with jQuery: Novice to Ninja by Earle Castledine and Craig Sharkie. How does it stack up against the rest? Read on to find out.The book begins with a brief review of why jQuery should be used and what makes it so captivating. However, unlike other jQuery books I have read, this one does not try to initially wow the reader with impressive mouse over tricks, floating menus and fades/dissolves and more. Instead, the authors methodically focus on a step-by-step analysis of how to call upon and construct jQuery calls from the ground up. Rather than hit readers first with the sizzle, a foundation of element identification and manipulation makes the educational process flow more effectively. Chapters progress from there to the stuff jQuery is better known for, such as animating, image slideshows, menus, tooltips and panels. Chapter 6 ties jQuery into Ajax, melding all that UI goodness into dynamically updating data. There are no back-end server examples in that chapter, since everything is done on the client-side using Javascript. Chapter 7 delves into forms, controls and dialogs showing once again how easy it is to dynamically construct a more impressive interactive and customized user experience with a few simple function calls. Lists, trees and tables are explored in the next chapter, showing examples calling upon jQuery that rival commercial web UI libraries. The book concludes with a chapter on plugins, themes and advanced topics like adding custom methods and selectors and events to jQuery, and a handful of brief miscellaneous tips (queuing/dequeuing animations, for example). The first brief appendix covers miscellaneous $.ajax and $.support options, while the second appendix covers Javascript tidbits like type coercion, boolean and equality operators. The third and final appendix covers plugin helpers such as the selector and context properties, the jQuery stack and a few closing paragraphs on minification (i.e., using utilities like JSMin and Packer to compress Javascript files for faster download).

The book is peppered with helpful callouts and brief code snippets (most under 15 lines) that show how quickly one can leverage the power that jQuery offers. One chapter or appendix I would have preferred to see is the authors' personal picks for websites and online library resources that feature some of the most impressive jQuery tricks available. Every week I see someone post on their blog a jQuery roundup featuring some sort of technique (typically involving menus, tables and images), but it would have been very helpful for the authors to share their expertise on what resources they recommend as 'best of the web'. A 4-color insert showing off jQuery's more graphically intense examples would have also been a welcome addition. Still, these criticisms are minor quibbles. The book did accomplish its mission of teaching jQuery from the ground up. Though I would not yet consider myself a jQuery ninja, I did feel that the book supplied me with the knowledge to hone my skills to help attain a higher level of mastery more quickly, especially when compared to some of the previously released jQuery titles on the market today.

Title: jQuery: Novice to Ninja Author: Earle Castledine and Craig Sharkie Publisher: Sitepoint ISBN: 978-0-9805768-5-6 Pages: 390 Cost: $39.95

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.