- From: Boris Zbarsky <bzbarsky@MIT.EDU>
- Date: Tue, 22 Feb 2011 13:40:55 -0500
On 2/22/11 1:25 PM, Will Alexander wrote: >> On Thu, 2011-02-17 at 15:24 -0500, Boris Zbarsky wrote: >> >> 1) If your script is no-cache, or max-age:0, does IE make a new >> request for it for every<script> element? > > For the most part this seems to be the case but there are two exceptions: > a) Before a URL loads, if it's assigned to another script, only one > request is made. OK, that would be a violation of the HTTP caching semantics. >> 2) If you create a bunch of<script> elements and set src on them all >> and the script returned is different on every GET, and then you run >> them, do you see all the different scripts running? > > Yes, except for the two cases mentioned above. OK. > IE< 9 may mitigate this to some degree by enforcing its standard > garbage collection rules. If only circular references to the script > element exist, IE will abort the network request and never fire the > readystatechange event. > > (function(){ > var s= create('script'); > s.src= .... > s.onreadystatechange= function(){addToDom(this);}; > })(); Uh... In that situation I would expect the event handler to keep the script alive until the load finishes. Anything else is just a bug that exposes GC timing to the web page. -Boris
Received on Tuesday, 22 February 2011 10:40:55 UTC