- From: Glenn Maynard <glenn@zewt.org>
- Date: Tue, 17 May 2011 13:52:10 -0400
On Tue, May 17, 2011 at 5:09 AM, Philip J?genstedt <philipj at opera.com>wrote: > To target this specific pattern, one hypothetical solution would be to > special-case the first script that attaches event handlers to a <video> > element. After it has run, all events that were already fired before the > script are fired again. However, this seems awfully messy if the script also > observes readyState or networkState. It might also interfere with browsers > that use scripts behind the scenes to implement the native controls. > > Although a kludge, another solution might be to block events from being > fired until x more bytes of the document have been parsed Masking the bug harder seems risky. The problem would still exist, it would just be a bit more obscure and even less understood. or it has finished loading. > I imagine anything done here should be done for all load-related events, like <img onload>. It's probably not good to effectively disable asynchronous load events for images. These events could be split into two parts: one which is deferred until the document is finished loading ("load", "canplay") and less obviously-named ones which are fired normally ("asyncload", "asynccanplay"), which people are unlikely to use without at least looking at documentation to know they exist. That would give a "safe", less-racy event by default, and give a somewhat less obviously-named event for people who know what they're doing and really don't want these events deferred. That would regress performance for existing pages, though. -- Glenn Maynard
Received on Tuesday, 17 May 2011 10:52:10 UTC