Well first of all you may want to consider using the "ready" event, which you can handler like this:
$().ready(function() {
...
});
Or, more succinctly and idiomatically:
$(function() {
...
});
The "load" handler really relates to an actual event, and can be handled on several different sorts of elements: <img>
and <iframe>
for example. The "load" event at the document or window level happens when all of the page's resources are loaded. The (synthesized, in some browsers) "ready" event however happens when the page DOM is ready but possibly before things like <img>
contents.
Another option is to simply put your <script>
tags at the very end of the <body>
or even after the <body>
. That way the scripts have the entire DOM to work with, but you don't have to worry about any sort of event handling to know that.