The Blog

Downloading code samples

Annoyingly, the original publishers of DOM Scripting—Friends of ED—have decided to demolish their website. That’s a shame because in the book, that’s where I tell people to go to download code samples.

Fortunately, the code samples are still available. They’ve been moved over to a page on the Apress site, the parent publisher of Friends of ED.

And here’s a direct link to a .zip file of the code samples.

Apologies for the inconvenience. I hope there won’t be any further dicking around with the location of the code samples.

Posted by Jeremy on Monday, June 25th, 2012 at 3:05pm 0 comments


Dot Net magazine recently asked a number of web workers to name three books that they consider web designers and developers should read. They then compiled the results into a list of 25 books.

I was surprised to see that DOM Scripting was listed at number five. After all, the book was published six years ago. But as David Edward Clark recently remarked on Twitter:

Finished DOM Scripting for 2nd time in 5 years. Nice to see it on netmag top 25. One of the few programming books thats aged well.

I think its longevity is due to a deliberate choice I made to avoid mentioning specific browsers as much as possible. There are still one or two points in the book where I make reference to this or that issue with some particular version of Internet Explorer but for the most part the book focuses purely on the standards rather than implementations. I guess that’s pretty unusual in a book about about a client-side programming language.

Posted by Jeremy on Tuesday, November 15th, 2011 at 5:28pm 1 comment

Second Edition

The second edition of DOM Scripting has just been released.

Let me start by clarifying: although my name appears on the cover, I wasn’t involved in this edition at all. It’s all the work of Jeffrey Sambells. The publisher—Friends of ED—asked me to write the second edition, but I just didn’t have the time available to commit to it. So it was a certain amount of trepidation that I cracked open the cover of the new release.

I’m happy to report that all the changes meet with my approval. Well, almost all the changes …the actual cover is pretty naff. Given the sort of beautiful books produced by small independent publishers like A Book Apart and Five Simple Steps, I’m always surprised by the relatively roughshod design displayed by more mainstream publishers.

Anyway, ‘though the presentation may leave something to be desired, the contents of the second edition is pretty darn good. The book has been expanded to cover three new areas:

  • HTML5,
  • Ajax,
  • Libraries (with an emphasis on jQuery).

This widens the scope of the book quite a bit, but happily the emphasis remains on best practices (especially progressive enhancement).

The markup examples have been updated to use the HTML5 doctype—although occasionally the text still refers to them as XHTML documents.

The Ajax examples are necessarily curt, but they manage to convey much the same message that I was expressing in Bulletproof Ajax: don’t take the existence of Ajax (or JavaScript, for that matter) for granted.

I think my favourite addition to the book is the section on jQuery. It revisits many of the examples from earlier in the book and shows how they can be rewritten more succinctly with jQuery. I think that’s pretty much the ideal why to get to know a library: first understand how the underlying language works, and then find out how the library can help you save time and effort.

So all the additions to the book are beneficial, in my opinion. There’s only one thing that has been removed from the original book; the appendix of DOM methods has been replaced with an appendix of jQuery methods. That’s a bit of a shame. I’ll see about getting the original appendix published here on this site.

On the whole though, the second edition gets a thumbs-up from me. If you already have the first edition, I’m not sure it’s worth getting this new one: you’d probably be better off with dedicated books on HTML5, Ajax and jQuery. But if you’re looking for an introductory book on JavaScript, I think the second edition of DOM Scripting—even with its expanded scope—is as good as it gets.

Posted by Jeremy on Monday, January 3rd, 2011 at 10:57pm 8 comments

HTML5 For Web Designers

DOM Scripting was my first book. It came out five years ago. Two years after that, I wrote Bulltetproof Ajax. Now I’ve written a third book.

It’s called HTML5 for Web Designers and you can from the greatest publishers on the web, A Book Apart. It’s not a long book, by design. It’s got just enough to get you up to speed with the new shininess in HTML5.

For a book about a markup language, there’s a surprising amount of JavaScript-related material in there. The new form enhancements are particularly interesting for the behaviour layer. A lot of common patterns that currently require scripted solutions are beginning to move down the stack into the structural layer: date pickers, sliders, and so on. We’re still going to need scripted solutions for a while yet, but it’s going to be an interesting period of transition.

We’ve been here before. Remember when you needed to use the onmouseover event just to do a simple rollover? Now we just use the :hover pseudo-class in CSS —although I have pointed out six years ago, with tongue firmly in cheek, that this crosses the streams of pristine layers of separation.

This is how technology evolves. Common patterns that require a programming solution eventually get a declarative implemenation. We’re seeing it in CSS with animation and we’re seeing it in HTML5 with form controls.

Does that make DOM Scripting obsolete? Far from it. Instead we can stop using JavaScript to reinvent the wheel, recreating patterns that thousands of others have already implemented, and instead start using the technology to solve problems specific to our own content.

My first book, DOM Scripting was published in 2005. It opens with the words:

This is an exciting time to be a web designer.

That’s even more true in 2010, thanks to HTML5. In HTML5 for Web Designers, I’m sharing my excitement.

Posted by Jeremy on Thursday, May 6th, 2010 at 12:55pm 0 comments

One point four

The latest version of jQuery has been released, just in time for the framework’s fourth birthday. Version 1.4 looks like a speedy improvement on its predecessors.

If you have an iPhone or an iPod Touch, be sure to check out this very nifty jQuery reference app. It doesn’t take long to install and, best of all, it doesn’t involve the app store at all—the whole thing is built with HTML, CSS and JavaScript using HTML5’s offline storage. Now, no matter where you are, you’ll always have access to jQuery documentation …as long as the battery in your phone lasts, anyway.

Posted by Jeremy on Friday, January 15th, 2010 at 10:58am 0 comments

Fully Frontalled

Last Friday, the Full Frontal conference took place here in Brighton. It was like having the circus come to town …but with fewer acrobatics and more closures.

In short, it was superb. I’ve been to quite a few conferences in my time so I can get pretty jaded but this was a textbook lesson in how to put on a great event.

The content was top-notch. The fact that the whole day was focused on a single technology gave it a very cohesive feel. That said, there was still a wide variety of topics covered: mobile, accessibility, performance, and even server-side JavaScript. The intensity and complexity increased as the day went on, finishing with Simon blowing everyone’s minds.

All the speakers were great but special mention must go to Jake Archibald from the BBC. His talk on JavaScript performance was thoroughly entertaining and informative —a very tricky combination to do successfully. He made the presentation look effortless but there must have been months of preparation involved. That kind of spontaneity takes years of practice.

If you weren’t lucky enough to make it to Full Frontal, you can check out the speakers’ slides on the website but really, you should have been there.

Congratulations and kudos to Remy for putting together such a world-class event. I sincerely hope there’ll be a Full Frontal 2010, but it’ll be hard to match the standard set by this year’s conference.

Posted by Jeremy on Wednesday, November 25th, 2009 at 6:22pm 2 comments

November spawned a monster

November is shaping up to be a very busy month for JavaScript.

Fronteers 2009 is a two-day event in Amsterdam on November 5th and 6th. John Resig and Douglas Crockford—that alone makes it worth the price of admission.

Straight after that, takes place in Berlin on November 7th and 8th. It’s a tight squeeze but it would possible to go to both events with a train ride in-between. I wonder if that’s what John is going to do; he’s speaking at both conferences.

But the highlight of the month still looks like being Full Frontal on November 20th. That’ll be held right here in Brighton which probably explains why I’m kind of biased. But seriously, check out the line-up:

…and more.

You can still grab tickets for the early-price of just one hundred squid.

Posted by Jeremy on Friday, August 21st, 2009 at 5:16pm 3 comments

Full Frontal

I remember when I spoke at the first @media conference in London in 2005, mine was the only talk related to JavaScript. Just a few short years later, there was an entire @media spin-off conference devoted to JavaScript: the slightly-inaccurately named @media Ajax. JavaScript has come a long way in the past few years.

This year’s be-there-or-be-square JavaScript event is the newly-announced Full Frontal conference to be held at the fantastic Duke Of York’s Picturehouse in Brighton on November 20th:

full-fron•tal (JavaScript):
with nothing concealed or held back.

It’s being organised by Remy Sharp. Doesn’t this guy ever sleep? Not content with creating JS Bin and the JQuery API browser, and writing a book on jQuery for Designers, now he’s going to organise a conference too.

It looks like being an absolute bargain. A mere £100 will get you a ticket to a day of serious JavaScript talks from some of the smartest people in the business: Christian Heilmann, Peter-Paul Koch, Stuart Langridge, Simon Willison, and more.

Best of all, I don’t have to travel anywhere for this conference as it’s being held in my adopted hometown of Brighton. But if you do have to travel, I can think of now better place to travel to. Come along and I’ll make sure the geeks of Brighton welcome you.

Tickets are on sale now.

Posted by Jeremy on Monday, April 20th, 2009 at 4:09pm 6 comments


A little while back, Phil Hawksworth, a very smart web developer at Osmosoft, created It’s a self-describing and rather lovely-looking ode to semantic markup, appropriate CSS and unobtrusive JavaScript.

You can read all about how it was made or you can simply go and play around with it …go ahead; click on stuff.

Phil’s co-worker Paul Downey is responsible for such printed masterpieces as The Web Is Agreement and The URI Is The Thing. He has now created a printable version of Unobtrusify. Head on over to, download and print to your heart’s content.

Now I just need to find some sticky material so I can slap my copy up next to my desk.

Posted by Jeremy on Wednesday, February 18th, 2009 at 5:23pm 2 comments

Happy birthday, jQuery!

jQuery was first released on January 14th, 2006. Now, precisely three revolutions of planet Earth later, jQuery 1.3 is out.

This release features some significant changes and improvements. There’s all the usual speed improvements, of course, but what I like in particular is the way that jQuery is ditching browser sniffing in favour of feature detection. That’s the way to do it.

The way the community is developing is as interesting as the code. Sizzle, the CSS selector engine inside jQuery, has been spun off into its own standalone project so that it can be used by other libraries and frameworks. Meanwhile, the jQuery project itself is coming under the banner of the Software Freedom Conservancy to formalise its standing as free and open software.

Congratulations to John and the rest of the team. Congratulations also to fellow Brightonian Remy Sharp for putting together the very handy jQuery API browser. The boy done good.

Posted by Jeremy on Wednesday, January 14th, 2009 at 8:55pm 5 comments

July 2024

Recommended Reading

XML Subscribe

Grab the RSS feed for this blog.

JavaScript API