About Nicholas C. Zakas

Recent Posts

IE OnBeforeUnload Fun

Was debugging something today when I made a discovery. Using Internet Explorer’s onbeforeunload event handler, you can automatically pop up a confirmation window asking the user to continue navigating away or stay on the page with ever using confirm(). All you have to do is set your message in the window.event.returnValue property, and the browser... […]

Firefox OnBeforeUnload Fun!

So Kevin correctly pointed out that you can do the same onbeforeunload behavior in Firefox as you can in Internet Explorer. It does require a little bit of a tweak to use the DOM event model, though: window.onbeforeunload = function (oEvent) { oEvent.returnValue = "blah"; } See, even JavaScript authors can learn something new every... […]

Introducing Eureka v0.1

I like bookmarklets, I really do, but what I’ve always wanted was a way to interact directly with the JavaScript on a page without typing it into the address bar, formatting it, etc. Thus, I introduce Eureka. Eureka is a command-line JavaScript interpreter designed to interface with Internet Explorer. You can attach to a running... […]

CSS Is Complicated

Being a CSS expert wherever I’ve worked, I always thought that it was pretty easy. This week, I’m supposed to be giving a presentation on CSS, so I’ve been working on putting together the Powerpoint slides this weekend. As I’ve been doing this I realized, CSS is really complicated! I currently have 40 slides and... […]

Ajax Shelflife

I was thinking the other day, all of the Ajax books are selling like hot cakes right now, moreso than the generic JavaScript books. This seems to me to indicate that there is a general misunderstanding about the relationship between JavaScript and Ajax. Given that, I’m wondering how long the buzzword Ajax will continue to... […]

Respect JavaScript

It has always baffled me why people don’t treat JavaScript like any other programming language. You wouldn’t start trying to develop an application in C without understanding the basics first, would you? Yet, this is what developers do constantly when dealing with JavaScript. They don’t want to learn JavaScript, they want to get right into... […]

Now That’s Security!

So just like I was the last one to get an iPod, I’m pretty sure I was also the last one to get an ING Direct savings account. They have incredibly good interest rates (4.75% on all new deposits before April 15), but I was always skeptical about doing banking solely online. I finally broke... […]

Yahoo! User Interface Blog

I got an email from Eric Miraglia today, who works in Yahoo!’s Presentation Platform Engineering group. Apparently, Yahoo! has decided to release some of its internal JavaScript libraries to the public, and has released a corresponding blog to help us all keep up: Yahoo! User Interface Blog. As part of this, Yahoo! has released two... […]

First Professional Ajax Reviews Rolling In

I was curious to see when the first reviews would start appearing for Professional Ajax. Today, I found two. The first comes from Foo, who seemed to like it. I consider it a great compliment when people get inspiration from stuff I write. I’ve been inspired by many people, as I believe software is a... […]

Alternate Ajax Techniques

A lot has been written about XMLHttp since the term Ajax was popularized, but it’s not just about XMLHttp. Ajax is about getting data from the server without unloading the current page, plain and simple, and there are other ways to accomplish this without using XMLHttp. To that end, I’ve begun a series of articles... […]