[whatwg] should we add beforeload/afterload events to the web platform?
James Robinson
jamesr at google.com
Tue Jan 17 16:24:48 PST 2012
On Sun, Jan 15, 2012 at 1:23 PM, Boris Zbarsky <bzbarsky at mit.edu> wrote:
> On 1/12/12 9:22 AM, Boris Zbarsky wrote:
>
>> On 1/12/12 5:16 AM, Simon Pieters wrote:
>>
>>> Note that it
>>> removes the root element when the script element is executed, not at
>>> DOMContentLoaded.
>>>
>>
>> Ah, I missed that. I guess the HTML5 parsing algorithm means that now
>> the elements are parsed into the other document, eh? That's actually
>> pretty cute. I wonder whether we can get the mobify folks to switch to
>> this....
>>
>
> Thinking back on this, this still has the issue of not preventing preloads.
>
> Again, preventing preloads on a per-load basis is a hard problem if you
> want to have sane parallelism. Preventing _all_ loads for a document based
> on some declarative thing near the start of the document, on the other
> hand, should not be too bad.
Even this scheme doesn't work with a model like SPDY push or other bundling
techniques or with more aggressive preloading that initiates loads before
the main resource is loaded.
It seems like there are two use cases:
1.) Monitoring/modifying/preventing network activity for a given resource
load
2.) Monitoring/modifying/preventing DOM modifications that occur as the
result of a resource load
For (1) I can't think of any web-facing needs. For extensions, I believe
this is better addressed by APIs that target the network layer more
directly - for example proxy auto config scripts, or things like
http://code.google.com/chrome/extensions/trunk/webRequest.html.
For (2) I think this would be better addressed by using next-generation
mutation events to observe (and potentially react) to the changes that
occur when an <img> is loaded, for example. I struggle to think of good
web-facing use cases for this, though.
In any event I think that beforeload as it exists today is a bad API for
the web and hope that we can stop exposing it to the web in WebKit
(although I suspect it'll stick around for extension contexts, which is
more acceptable in my view).
- James
> If that plus a beforeprocess event addresses the majority of the
> web-facing use cases, we should consider adding that.
>
> -Boris
>
More information about the whatwg
mailing list