[whatwg] should we add beforeload/afterload events to the web platform?

Simon Pieters simonp at opera.com
Thu Jan 12 02:16:30 PST 2012

On Wed, 11 Jan 2012 15:51:47 +0100, Boris Zbarsky <bzbarsky at mit.edu> wrote:

> On 1/11/12 6:59 AM, Simon Pieters wrote:
>> http://software.hixie.ch/utilities/js/live-dom-viewer/saved/1297
>> Might not be cross-browser yet (e.g. Opera seems to run the image's
>> onload handler), but should work per spec I think. Well, the load can't
>> be prevented if it's speculatively loaded it before the script has
>> executed, but maybe that's fine for the use case.
> This also doesn't prevent rendering (which can easily start before  
> DOMContentLoaded), doesn't prevent execution of script in the document  
> that's being loaded, etc.

Sure it does (or at least should, and does in Firefox). Note that it  
removes the root element when the script element is executed, not at  
DOMContentLoaded. It does the transformation and puts the root element  
*back* at DOMContentLoaded. Scripts don't run when parsed into the other  
document since it is a different document than the one the HTML parser  
runs on. They don't run when the root element is put back, either, since  
they are marked as already-executed, I think.

The only way something could be rendered with the above script before it  
runs is in Opera with DSE enabled.

> Again, the hard part of doing a transformation on HTML is not doing the  
> transformation; it's preventing the transformation source document from  
> being treated "as usual".

Simon Pieters
Opera Software

More information about the whatwg mailing list