Two common scenarios where scripts aren't put at the bottom:
- Having talked to web devs across hundreds of companies it's often the case that they control a certain section of the page. Inserting content outside of that section requires changing so much infrastructure, they skip the optimization. - 3rd parties have no control over where their snippet is placed in the content owner's page. Providing a snippet that contains "DEFER" will guarantee they don't block the main page's content.

-Steve

On 2/10/2010 1:31 AM, Henri Sivonen wrote:
On Feb 8, 2010, at 23:54, Steve Souders wrote:

It would be good to mention this optional behavior here, something along the 
lines of browsers may want to do speculative parsing, but shouldn't create DOM 
elements, etc. - only kickoff HTTP requests.
FWIW, the HTML5 parser in Gecko (not on by default yet) does more than just 
kicks off HTTP requests. However, what it does isn't supposed to be detectable 
by author-supplied scripts.

4. "If the element has a src attribute, [snip] the specified resource must then be 
fetched, from the origin of the element's Document."
     If the script has DEFER, the request should not start until after parsing 
is finished. Starting it earlier could block other (non-deferred) requests due 
to a connection limit or limited bandwidth.
As I understand it, starting the request early is the whole point of 'defer'. 
Otherwise, the author could put those scripts at the end of the page.

Reply via email to