Well, it appears to be a name collision. status is actually a property on the Window object. Chrome’s not handling the reassignment properly.

Simply changing

var status = $("#status");

to

var statusArea = $("#status");

seems to fix it here.

It also seems that putting it in a document.ready event handler fixes the problem as well.

The most appropriate fix, however, is probably to do something a little safer, like using a global application object instead of the Window object. I thought that might be a little out of scope for this book though.

var myApp = {}; // our app object
myApp.status = $("#status");

and then just reference it through

myApp.status.html();

instead. This way you’re only putting one new variable on the Window object (the myApp) variable.

Thanks for pointing this out - this will be something I’ll investigate fixing more broadly.