News for hackers. Stuff that matters.
Re:Don't wait for "DOM ready" for your app to start by kevincennis on Friday June 08, 2012 @07:59PM (#4086704)
Well, "DOM ready" isn't really a thing -- but assuming we're talking "DOMContentLoaded", then you're absolutely right. It doesn't have anything to do with other resources (images or CSS) being loaded or not. It'll execute as soon as the document is parsed.

As for downloading CSS -- it won't prevent your JS from executing, but it'll block page rendering until all the stylesheets have been downloaded and parsed.

Re:Don't wait for "DOM ready" for your app to start by untog on Friday June 08, 2012 @08:24PM (#4086761)
That's what I thought. Which means the original post makes very little sense- if your <script> tags are just before </body> there's surely no real delay between that an using DOMContentLoaded?
Re:Don't wait for "DOM ready" for your app to start by cramforce on Friday June 08, 2012 @08:43PM (#4086791)
The spec agrees with you, but even MDC does not: https://developer.mozilla.org/en/DOM/DOM_event_reference/DOM...

DOMContentLoaded, in all important browsers, does block to wait for CSS. Manipulating the DOM before this event both increases the chance to make changes before first-paint (decreases "jigger" on page load) and gives you the chance to request more resources earlier.

Re:Don't wait for "DOM ready" for your app to start by kevincennis on Friday June 08, 2012 @08:48PM (#4086801)
Wow, that's a total surprise.

I guess I never really noticed this because my scripts are always included so much later in the document than my CSS.

Re:Don't wait for "DOM ready" for your app to start by bzbarsky on Saturday June 09, 2012 @10:46PM (#4090015)
DOMContentLoaded does not block to wait for CSS in Firefox.
Re:Don't wait for "DOM ready" for your app to start by bzbarsky on Saturday June 09, 2012 @10:47PM (#4090017)
> As for downloading CSS -- it won't prevent your JS from > executing,

It most surely will, in at least Gecko and WebKit. Too many pages have JS that depends on all preceding stylesheets having been loaded.