Let us say I have a HTML page that contains a javascript file:

The base.js is like this:

```
$(document).ready(function () {
   obj.init();
}

// ..............

var obj = {...};

```

Surprisingly, ***sometimes***(not all the time) Firebug shows me the undefined error on `obj.init()` call! My understanding is that document ready means all html elements, including images, javascript files downloaded and executed(?).

I believe in order to find the root cause of this error, we need understand what exactly the "document ready" means? anybody has any insight?

============================

Update: maybe I should not mention about image over here, my main concern is regarding the javascript file in particular. Does "DOM fully constructed" include "all javascript code executed"?

============================

Update again: It seems people here agreed that event "document.ready" WILL NOT be triggered until ALL javascript code got downloaded and executed. Thus, root cause of the issue remain unknown. I did bypassed this issue after I moved the $(document).ready block to the bottom of the javascript file.