Advanced DOM Scripting

Author: Jeffrey Sambells with Aaron Gustafson

Publisher: Friends of ED, 2007
Pages: 570
ISBN: 978-1590598566
Aimed at: Web developers
Rating: 5
Pros: Detailed, standards-based approach
Cons: Not a lot
Reviewed by: Dave Wheeler

I liked this book. A lot.

Writing good client-side JavaScript is non-trivial, and Sambells takes the trouble to explain how to do it in detail. The book starts quickly, leaping in to subjects such as closures, namespaces and creating your own object types. The concept of script libraries, and thus how you should structure code, is presented early on and reinforced thereafter. Throughout the book you get the feeling that you are building on what has been presented before.

As you would expect, topics such as event handling and DOM programming are examined in detail. And although this is not a book on AJAX, the relatively short chapter on AJAX covers the topic thoroughly and in detail.

The book is technically very detailed, although comfortingly the explanations are clear and well written. Non-programmers might struggle a little, but anyone with basic coding skills should be able to follow along easily enough.

The book offers sensible and practical guidance on how and where scripting can add real value to a Web application. I particularly enjoyed the balance offered by the explanatory case studies to help alleviate what might otherwise have been very dry material; they added context to the code. Throughout, the book takes a no-fuss approach to writing browser-neutral script and to handling the no-script scenario gracefully.

The one nagging question in my mind is whether you actually need this book in the face of the many abstraction libraries that exist today? For example, many ASP.NET developers will be happy utilising pre-canned scripting provided by features such as the validation controls, or with using the UpdatePanel to add AJAX functionality to their Web sites. However, if you want to really know how to crank out client-side script, then I would highly recommend this book.

Last Updated ( Friday, 30 January 2009 )