[whatwg] cloneNode and HTML elements
Philip Jägenstedt
philipj at opera.com
Thu Sep 10 02:30:13 PDT 2009
On Thu, 10 Sep 2009 11:15:06 +0200, Robert O'Callahan
<robert at ocallahan.org> wrote:
> On Thu, Sep 10, 2009 at 7:41 PM, Maciej Stachowiak <mjs at apple.com> wrote:
>
>> On Sep 9, 2009, at 10:26 PM, Robert O'Callahan wrote:
>>
>> If you call cloneNode on a media element, the state of the resulting
>> media
>>> element seems unspecified. Should it be playing the same media
>>> resource at
>>> the same current time as the original?
>>>
>>> Similar questions arise when you clone form elements; is the state
>>> that's
>>> not visible in the DOM cloned?
>>>
>>> Who should be responsible for defining this?
>>>
>>
>> Does cloneNode require copying any state besides an element's qualified
>> name, attributes and DOM children? The definition in DOM3Core doesn't
>> say
>> anything else should be copied. Is form control state (such as set of
>> items
>> selected in a <list multiple>) copied?
>>
>> Reference for cloneNode:
>> http://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-3A0ED0A4
>>
>> My assumption based on the spec is that no element-specific internal
>> state
>> should be copied, the cloning should only be DOM-wise.
>>
>
> It's not obvious to me that DOM 3 Core's silence means nothing else is
> copied, since non-DOM state is outside its scope.
>
> I wonder if authors would be surprised if the non-DOM state is not
> copied.
I would suggest only copying state when it is needed for web compatibility
or when there's a compelling use case. In the case of HTMLMediaElement the
complexity of setting up a second decoding pipeline and trying to get it
into the same state as the first must also be taken into account. A true
clone may simply not be possible in all implementations.
--
Philip Jägenstedt
Core Developer
Opera Software
More information about the whatwg
mailing list