DOM Scripting and over one million other books are available for Amazon Kindle. Learn more

Vous voulez voir cette page en français ? Cliquez ici.

Sign in to turn on 1-Click ordering.
More Buying Choices
Have one to sell? Sell yours here
Start reading DOM Scripting on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

DOM Scripting: Web Design with JavaScript and the Document Object Model [Paperback]

Jeremy Keith , Jeffrey Sambells

List Price: CDN$ 39.06
Price: CDN$ 23.16 & FREE Shipping on orders over CDN$ 25. Details
You Save: CDN$ 15.90 (41%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Usually ships within 2 to 4 weeks.
Ships from and sold by Gift-wrap available.


Amazon Price New from Used from
Kindle Edition CDN $17.24  
Paperback CDN $23.16  
Join Amazon Student in Canada

Book Description

Dec 27 2010 1430233893 978-1430233893 2

There are three main technologies married together to create usable, standards-compliant web designs: XHTML for data structure, Cascading Style Sheets for styling your data, and JavaScript for adding dynamic effects and manipulating structure on the fly using the Document Object Model. This book is about the latter of the three.

DOM Scripting: Web Design with JavaScript and the Document Object Model gives you everything you need to start using JavaScript and the Document Object Model to enhance your web pages with client-side dynamic effects. We start off by giving you a basic crash course in JavaScript and the DOM, then move on to provide you with several real world examples built up from scratch including dynamic image galleries and dynamic menus, and show you how to manipulate web page styles using the CSS DOM, and create markup on the fly.

New material for this edition includes a run through of the most popular JavaScript libraries and their use.

What you’ll learn

  • Apply dynamic behavior to your pages without inserting JavaScript in your markup.
  • Write scripts that degrade gracefully when JavaScript isn’t available.
  • Use web standards to ensure cross-browser compatibility.
  • Harness the power of the DOM to create user-controlled animation.
  • Also includes an introduction to Ajax.

Who this book is for

This book is for web developers wanting to expand their knowledge of the DOM to add interactivity and functionality to their web pages.

Frequently Bought Together

DOM Scripting: Web Design with JavaScript and the Document Object Model + The Non-Designer's Design Book (3rd Edition)
Price For Both: CDN$ 46.35

One of these items ships sooner than the other.

Customers Who Bought This Item Also Bought

Product Details

Product Description

About the Author

Jeremy is a web developer living and working in Brighton, England. Working with the web consultancy firm Clearleft ( ), he enjoys building accessible, elegant websites using the troika of web standards: XHTML, CSS, and the DOM. His online home is Jeremy is also a member of the where he serves as joint leader of the DOM Scripting Task Force.
When he’s not building websites, Jeremy plays bouzouki in the band Salter Cane ( ). He is also the creator and curator of one of the web’s largest online communities dedicated to Irish traditional music,

Jeffery is a graphic designer and self-taught web applications developer best known for his unique ability to merge the visual world of graphics with the mental realm of code. With a Bachelor of Technology degree in Graphic Communications Management along with a minor in Multimedia, Jeffrey was originally trained for the traditional paper-and-ink printing industry, but he soon realized the world of pixels and code was where his ideas would prosper. In late 1999, he cofounded We-Create, Inc., an Internet software company based in Waterloo, Ontario, which began many long nights of challenging and creative innovation.

Currently, as Director of Research and Development for We-Create, Jeffrey is responsible for investigating new and emerging Internet technologies and integrating them using web standards-compliant methods. In late 2005, he also became a Zend Certified Engineer.

When not playing at the office, Jeffrey enjoys a variety of hobbies from photography to woodworking. When the opportunity arises, he also enjoys floating in a canoe on the lakes of Algonquin Provincial Park or going on an adventurous, map-free, drive with his wife. Jeffrey also maintains a personal website at, where he shares thoughts, ideas, and opinions about web technologies, photography, design, and more. He lives in Ontario, Canada, eh, with his wife, Stephanie, his newborn daughter, Addison, and their little dog, Milo.

Inside This Book (Learn More)
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index
Search inside this book:

Customer Reviews

There are no customer reviews yet on
5 star
4 star
3 star
2 star
1 star
Most Helpful Customer Reviews on (beta) 4.4 out of 5 stars  93 reviews
110 of 112 people found the following review helpful
5.0 out of 5 stars Exceptionally Clear Handling of a Subject in Transition Oct. 6 2005
By Brett Merkey - Published on
This book is directed toward scripters at the beginning and intermediate level. This is also a very good book for the veteran scripter who wants to re-tool as DOM-based techniques take hold.

I think Jeremy Keith takes the best road when he launches directly into DOM methods and objects, only mentioning the older ways for completeness. Most often, JavaScript books do the opposite -- mentioning DOM scripting only as an advanced art. But why learn the older ways when you must unlearn them later?

The author focuses on teaching correct methods and approaches, often taking the long way around to make it easier to see the larger picture. This requires a lot of forethought and organization on the part of an author and here the material excels. I don't think anyone will trip up following this guide through the Web script jungle.

The author also avoids the unbearable humor and cutesy language encountered so often in tech books. Thank you Mr. Keith! This is good, clear writing to go with good, clean scripting.

Quibbles: I think the author should have been more concerned with compatibility issues, esp. with IE6, the decrepit but still dominant browser. For instance, on pp 200-01, he recommends using the setAttribute() method to set a class but does not mention that IE improperly demands "className" as a parameter. His snippet would fail in IE. The chapter on CSS scripting was good but barely scratched the surface, not mentioning a bunch of cool scriptable objects.

Overall, this book is a worthy tool that should be welcomed by the target audience.
50 of 50 people found the following review helpful
5.0 out of 5 stars Finally, a book to teach us JavaScript DOM Jan. 28 2006
By Frank Stepanski - Published on
Format:Paperback|Verified Purchase
There's been a lull in the past couple years with JavaScript books. Even though there are many sites that use DHTML and DOM scripting, there never was any books that really explain how to do these very useful and cool effects. Plenty of websites to download and copy code, but nothing that really explains how to do it. UNTIL NOW!!!

The moment I start reading the first chapter, I knew I would finally learn what DOM scripting really meant. I've read through many basic JavaScript books from different publishers but all of them just briefly described how the DOM worked in one brief chapter. The whole DOM Scripting book talks about it.

The first 2 chapters are a brief refresher course of the JavaScript basics, and then the 3rd chapter starts in with the DOM. After a thorough explanation of what it is and how it can be used, the next chapters go through various projects in reviewing how it can be used in real life web design.

There are eight chapters that explain and show you how DOM scripting can be used. The final chapter talks about the future of scripting and gives examples of AJAX--a great bonus!

I highly recommend this book to anybody who wants to take their JavaScript code to the next level. It's also a great book to help would-be AJAX programmers as well. Since you have to have a very good understanding of DOM to create AJAX applications.
37 of 39 people found the following review helpful
5.0 out of 5 stars The Perfect Javascript/DOM book for beginners March 24 2006
By Mashhoor Al Dubayan - Published on
Format:Paperback|Verified Purchase
When a Javascript/DOM book:

1) ..starts by introducing Javascript and it's syntax instead of jumping into DOM immediately.

2) ..Explains every single bit of code in a simple language.

3) ..uses simple and easy-to-follow code.

4) ..Starts a chapter with a very simple program and build on it as you read.

5) ..lets you put up your first useful/practical Javascript script in a few hours.

6) ..encourages you to 'understand' the code instead of 'memorizing' it

7) written by Jeremy Keith

..Then you know it's worth every single cent you spend on it. I have nothing to say here except that if you're someone who knows nothing about Javascript/DOM and is willing to learn it, then you really shouldn't miss this book. But If you're an intermediate or advanced Javascript/DOM coder, then buying this book is not a good idea. It was solely made for begginers.
23 of 24 people found the following review helpful
4.0 out of 5 stars Separating behavior from content: great design (code can improve) Feb. 5 2006
By raul parolari - Published on
The intent of the author is to show how JavaScript, with the DOM Api, can indeed be used in an intelligent way, debunking the myth (somehow justified by the horrific javascript code laying around) that "scripting languages" are somehow inherently inferior to compiled ones. Incidentally, this effort is similar to what Damian Conway has recently done, in a larger scale, for Perl ("Perl Best Practices").

The book is at its best when it describes how to methodically partition the design of a web page in 3 areas: the content-markup (xhtml), the presentation (css), the behavior (JavaScript, DOM). Jeremy Keith achieves this not by abruptly inflicting the reader with massive dosis of W3C standards, but rather "by evolution", taking one example (an "image gallery") coded in the traditional way, and continuously improving and refining it. Incidentally, the web pages that emerge are of a stunning beauty.

The book has its weak moments; I mention only two of them, one on the theory, the other on programming:

1) an apparent inconsistency on the properties of childNode[] array. After having repeatedly stated that this array contains ALL the children of an element node ("including the attribute nodes", see p. 67), it suddenly states (p. 70, p. 154, etc) that the text node of a paragraph node is the first and ONLY node of childNodes[]. Some tests (using elements that had attributes) confirmed that this last statement was correct. So, apparently, the childNodes[] array of an element does NOT report its attribute nodes, contradicting the first assertion.

2) the function "showPicture()", the central routine of the example that runs across all the book. All is fine, until Jeremy suddenly decides to change (ch 6, p. 106) its return to "true" when the function fails, and "false" when it succeeds. This is done in order to easily propagate the indication to the browser whether to follow the link or not, but... let me put it this way: would you write routine "start_shuttle()" to return "true" when the requested action fails, just because it makes life "easier" (?) for some intermediate caller routine? let's hope not (for the astronauts' sake).
Furthermore, as show Picture() had multiple returns inside, each one of them had to be tweaked in the "tricky" way; contrast this potential maintenance nightmare with instead returning the right value and simply switching it in the caller. The code (a la D. Conway "self-documented" way) could be:
"var followLink = ! showPicture(); return followLink".
A comment can be added to remove any residual doubt for people maintaing the code in future: "if showPic() succeds, tell browser not to follow the link, and viceversa".

I want to underline that, while the code is sometimes of poor quality, the design of the software of the examples is excellent, way above anything else that one sees for JavaScript. Separation of "behavior" from "content" was not an empty slogan; by chapter 7, the goal is reached. Not only all the JavaScript code is out of the html page, but even the elements that were not strictly "content" are out (they are now dynamically created).
And the page works without a glitch ("gracefully degraded", as Jeremy says) even if JavaScript is disabled (or if it is a robot reading it, etc). Fantastic.

I therefore reccomend this book to anyone interested to a methodic introduction to client-side programming with JavaScript and the DOM. A good Css book (like the one from Lie & Bos, to reach exactly the same objective on the presentation side) can be a great companion, on this trip to greater things (Ayax & co).
16 of 16 people found the following review helpful
5.0 out of 5 stars DOM for Designers Dec 2 2005
By Nathan Smith - Published on
Over Thanksgiving break, I was able to set aside some time to get reading done that I have been putting off for awhile. I have just finished reading the tome of knowledge entitled DOM Scripting, and have to say that I was very pleased with this book. It is written by Jeremy Keith, who is one of, if not the leading expert in JavaScript and the Document Object Model. The forward to the book is done by Dave Shea, curator of the popular site CSS Zen Garden.

In the case of highly technical subjects, documentation is usually quite widespread. Most programming textbooks will tell you what you need to know, in some way or another. The thing I like about this one is the way in which Jeremy presents the information. He uses everyday, practical examples of JavaScript, such as making an interactive photo gallery.

I also like how he does not tout JavaScript as the end-all solution for web design. In several cases, he will show how to do something with JavaScript, and then gives a more simple example of how it would work with CSS. He makes mention of how simple image roll-overs need not be handled by JS anymore, because of the CSS a:hover handles it better and with less code.

This book relates to the reader in a manner that assumes a shared basic knowledge of XHTML and CSS. It is full of examples of selecting nodes via the getElementByTag method, not unlike the way CSS interacts with the DOM. For instance, with CSS every H1 in a document can be given a certain style.

By using JavaScript, you can affect these by changing color, margin or padding directly. Jeremy gives examples of how instead of re-defining these types of things with JS, you can simple assign a different class name to them, and control the styles via CSS, the way you normally would.

He also shows how to impliment current-page indicators in a navigation system, but conceeds that things like this are better handled with server-side scripting. It is refereshing to see an author who is humble about his area of expertise, presenting it as a piece of a larger system, and showing areas in which it might not be the best fit for the task at hand.

I could go on and on, but I think that if I give away too much, that might be giving you the book for free. So, take my advice: If you are wondering what all this DOM / AJAX buzz is, then go get this book. It will give you a solid handle on the underlying principles of the DOM, and show you how to use a combination of JavaScript and CSS to best manipulate behavior within your webpages.

Look for similar items by category