coderanger.com blog

news about what I am developing and other random thoughts

Javascript cool feature of the day: on Browser Ready


From:
http://www.fearthecowboy.com/2007/02/javascript-cool-feature-of-day-on.html

A nice little one-liner script you can use in your HMTL page to run some a function when the browser is done loading the HTML.

I have been using this cool little snippet for a while, something I factored down for my own purposes, and tucked away in my little bag of tricks. I didn’t realize that others’ were not using something similar to this, (I saw a spate of posts where people were using document.write)[SHUDDER!]. So, I’m going to post it, and let the world rejoice:

var _my_init = document.addEventListener ? document.addEventListener("DOMContentLoaded", function(){myinit();}, false): setInterval( function(){if (/loaded|complete/.test( document.readyState )){ clearInterval(_my_init);myinit(); } }, 10);

Works in IE, FireFox, and Safari. Probably others, as I think most browsers support one of the two methods for bootstrapping an init function.

To use it, just replace the two myinit() calls with whatever you want to run, and the replace the _my_init variables to something that’ll be unique to you. I’d comment on my crazy desire to overload the living tar out of the ternary operator in javascript, but that’d be redundant.


Leave a Reply

archives

  • December 2007
  • July 2007
  • June 2007
  • November 2006
  • April 2006
  • November 2005
  • October 2005
  • September 2005
  • July 2004
  • June 2004
  • November 2003
  • October 2003
  • September 2003
  • categories

  • BuildIT (21)
  • General (47)
  • MailViewIT (1)