Re: [XHTML 2] 24.1 OBJECT declare and "completed loading" (PR#7751)

>"Brad Pettit" <bradp@microsoft.com>
>>>Please remove the requirement that the document be completed loading
>>>before a declare="declare" object can be executed

>At what time do you propose the object execute? What if the object being
>being executed references the DOM of the document that has not finished
>loading? Additionally, since rendering of fallback content for objects
>is dependent on whether outer objects have failed, nested objects that
>have been merely declared should not be executed until their outer
>content has failed loading.

>Do you have a scenerio where the execution is necessary?

The scenario is simply consistency, consider a document containing:

<object id="video" declare="declare" ... a video ... />
<a href="#video">Play Video</a>

Here, the user will see the Play Video document as the document is loading 
with progressive rendering, but nothing can happen until the document has 
finished loading.   This won't be obvious to users, why activating the play 
video link doesn't do anything whilst the rest of the document is loading.

The nested object argument is indeed an interesting one, and one I cannot 
see easily reconcilable, but I can't see a use case when an author would do 
it:

<object >
 <object id="a"/>
</object>
<a href="#a">Activate</a>

The Activate link will again do nothing, unless the first object is 
unavailable (although I don't believe the spec is completely clear on this), 
again the problem here is a consistency, and utility, it's not good to have 
links which do nothing.

I can see 3 ways of ways of resolving this, remove the functionality to 
activate declared objects via links, returning it to the domain of scripting 
as it is in existing clients, not good from functionality, but good from a 
perspective of simplicity of specification.

Modify the activation rules, such that <a href="#a" causes the document to 
refresh itself and then activate the object onload, bad for functionality, 
but as this would often be combined with scripting in real browsers it's 
good fallback functionality.

Add an attribute to the OBJECT such that the author can suggest if it can be 
activated before the document is loaded, and add a conformance requirement 
that the UA style any links to ones that can't be in a disabled state until 
the onload event fires.

This last one is my favourite.

Cheers,

Jim. 

Received on Tuesday, 31 May 2005 18:51:24 UTC