<br><br><div class="gmail_quote">On Sun, Jul 25, 2010 at 3:25 AM, Steve Souders <span dir="ltr"><<a href="mailto:whatwg@souders.org">whatwg@souders.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">



  

<div bgcolor="#ffffff" text="#000000">
"Defer" doesn't achieve the desired behavior. The goal is "load this
script after everything else in the page is done". Instead, defer'ed
scripts get loaded immediately, thus stealing one of the few network
connections from other (more important) resources.<br>
<br></div></blockquote><div><br>If I recall correctly "defer" was meant as related to the script execution not its loading, a totally different task.<br><br>I
 am not sure what I tried with "Cuzillion" is the correct way of testing
 this specifically but adding an "in-line" script block with a 2 seconds
 execute time at the end of the body also delay the deferred script of 2
 seconds. To me this means the "defer" attribute will defer execution 
until all other in-line scripts have finished run. Which, in turn, has 
noting to do with information about the loading process and its timing.<br> 
<br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div bgcolor="#ffffff" text="#000000">
Here's an example:<br>
    <a href="http://stevesouders.com/cuzillion/?c0=hj1hfft0_0_f&c1=bi1hfff2_0_f&c2=bi1hfff2_0_f&c3=bi1hfff2_0_f&c4=bi1hfff2_0_f&c5=bi1hfff2_0_f&c6=bi1hfff2_0_f&c7=bi1hfff2_0_f&c8=bi1hfff2_0_f&t=1280020727443" target="_blank">http://stevesouders.com/cuzillion/?c0=hj1hfft0_0_f&c1=bi1hfff2_0_f&c2=bi1hfff2_0_f&c3=bi1hfff2_0_f&c4=bi1hfff2_0_f&c5=bi1hfff2_0_f&c6=bi1hfff2_0_f&c7=bi1hfff2_0_f&c8=bi1hfff2_0_f</a><br>

<br>
Notice that although the script is "defer" it gets loaded before the
images. (The load time of the script is displayed at the bottom and is
typically 200-500ms. However, each image takes 2000ms to download. If
the script was truly deferred it should be downloaded some time >
2000ms. Since it's loaded earlier, it steals a network connection and
causes one of the images to download later.)<br><font color="#888888">
<br>
-Steve</font><div class="im"><br>
<br></div></div></blockquote><div><br>To effectively defer loading of scripts (lazy loading) one should use 
the "onload" event, that at least ensure cross-browser functionality.<br><br><br>Diego Perini<br><br> <br></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div bgcolor="#ffffff" text="#000000"><div class="im">
On 7/23/2010 1:27 PM, Ian Hickson wrote:
<blockquote type="cite">
  <pre>On Wed, 17 Mar 2010, Steve Souders wrote:
  </pre>
  <blockquote type="cite">
    <blockquote type="cite">
      <pre>Given that it is possible to do this from script, how common is it for 
people to do it from script? If it's very common, that would be a good 
data point encouraging us to do this sooner rather than later.
      </pre>
    </blockquote>
    <pre>6 of the top 10 US web sites load scripts after the load event: eBay, 
Facebook, Bing, MSN.com, MySpace, and Yahoo.
    </pre>
  </blockquote>
  <pre>Do we know why they do this rather than use defer="", and whether 
defer="" would handle their use casess?

  </pre>
</blockquote>
</div></div>

</blockquote></div><br>