This weekend, I finished reading jQuery UI 1.7 [The User Interface Library For jQuery] by Dan Wellman (released by PACKT Publishing). It's a follow-up to his jQuery UI 1.6 book, which I reviewed in early 2009. With a technology that is evolving as fast as jQuery, it's important that the documentation keep up such that we may know how to best leverage the tools that we have available; Dan's latest book, jQuery UI 1.7, does just that - bringing us completely up-to-speed with all aspects of the jQuery UI library.
| || || |
| || |
| || || |
One thing that I was thrilled to see when reading this book was that after a brief introduction to jQuery and jQuery UI, Dan dives directly into the jQuery UI CSS framework. With the 1.7 release of jQuery UI, the library has become completely standardized in the way that the markup and CSS classes are applied to the library widgets. Not only does this make it easy to uniformly skin the widgets (via tools like ThemeRoller), it provides a good structure for anyone hoping to create their own custom user interface widgets.
Dan covered the CSS framework in chapter 2, but I was very happy to find the CSS framework being brought up as a consistent theme throughout the book; each widget-based chapter takes time to examine the programmatically-generated HTML of each widget instance as well as how the phenotype of each widget might be overridden with some simple CSS rules. Whether through the configuration options or through customized CSS, Dan really does a great job of painting a picture of flexibility; as with any library, it's important to not feel like you've locked yourself into a corner, and Dan takes great care to drive home the point that jQuery UI is empowering, not constraining.
The CSS exploration in this book was very good and it made me greedy; I wanted to see more. Particularly, I would have loved to have seen a chapter dedicated to the concept of authoring your own jQuery UI widgets. Throughout the book, Dan touches on this concept, showing us were we might use a ui-widget-header or ui-widget-content class to theme our own markup, but authoring as a topic was never really fleshed out. Of course, I have a suspicion that an exploration in authoring widgets would fill another book, not just another chapter (hint hint ;)).
Beyond the CSS framework and all that it entails (which is something that I was particular interested in), the book provides exhaustive documentation of how the UI widgets and UI behaviors work. Starting each widget with the out-of-the-box default configuration, Dan discusses what each option, callback, and event binding does and how we can leverage them to enhance the user experience. When it comes to the UI behaviors (drag, drop, resize, select, sort), which are by nature less tangible, Dan takes extra care to step through examples with increasing complexity, describing real-world scenarios in which the various behaviors might be used (ex. maze game, task list, image viewer, Google-style portal).
In addition to the focused explanation of each widget and behavior, Dan also demonstrates the high-intercompatability of the various library components. Whether it's nesting tabbed interfaces within accordions, accordion interfaces within modal windows, date pickers as modal prompts, or applying sortability behaviors to tabbed interfaces, I was very happy to see that the underlying structure of the jQuery UI library was so well thought out that nesting one widget within another causes no complications.
Overall, jQuery UI 1.7 [The User Interface Library For jQuery] is a very thorough book and definitely a solid resource for anyone looking to become familiar with the ins and outs of the library. Dan Wellman has a clear and easy-to-follow writing style and lays out his examples with increasing complexity in a way that everyone can understand. He appears to have a good grasp on the underlying CSS framework, and in fact, this is a topic on which I'd like to see him write a lot more.
Looking For A New Job?
- Senior ColdFusion / Mura Developer at Fig Leaf Software
- ColdFusion Developer - Backend Systems at Intuvo LLC
- Front End Developer - Web/Mobile Developer - Event App company at MeetingPlay
- Web Developer and More! (Network Engineer/System Admin/Web Developer) at United Clinical Laboratories
Thanks for the review, Ben!
great review, Ben!
exactly what i was waiting (and hoping) for - i bought the book straight away after reading your review, but from PACKTpub.com directly - their cover price is a bit better, AND you can use the DZone promo code to get further 20% discount (!): http://java.dzone.com/announcements/get-20-dzone-members-books
and don't forget to fill out a short survey after the purchase (if you buy from PACK directly) - you will get a 40% discount promo code for future purchases.
Awesome! I really hope you like it.
Would you need to read the first book before reading this one?
Definitely not. There's nothing in the first book that is not covered in the second book (in a more up-to-date way).