- From: SVG Working Group repository <cam+svgwgrepo@mcc.id.au>
- Date: Fri, 07 Feb 2014 06:13:16 -0800
- To: public-svg-wg@w3.org
details: https://svgwg.org/hg/svg2/rev/bec3575de544 branches: changeset: 611:bec3575de544 user: Erik Dahlstrom <ed@opera.com> date: Fri Feb 07 15:09:43 2014 +0100 description: ACTION-3580: Remove <use> element instance tree. As part of this, add references to Shadow DOM, doing a part of ACTION-3413. This needs further review and changes for the style parts, but it's a start. We can probably remove or make some parts of the spec text about instance trees informative, and refer to Shadow DOM instead. diffstat: master/changes.html | 6 + master/definitions.xml | 2 - master/idlindex.html | 2 - master/interact.html | 9 +- master/refs.html | 8 + master/struct.html | 264 ++---------------------------------------------- 6 files changed, 30 insertions(+), 261 deletions(-) diffs (484 lines): diff --git a/master/changes.html b/master/changes.html --- a/master/changes.html +++ b/master/changes.html @@ -113,16 +113,20 @@ have been made.</p> <li>Clarified that CSS transforms on an <a>outermost svg element</a> do not affect <a href="struct.html#__svg__SVGSVGElement__currentScale">currentScale</a> or <a href="struct.html#__svg__SVGSVGElement__currentTranslate">currentTranslate</a>. Defined the returned values on <a>'svg'</a> elements that are not <a>outermost svg element</a>.</li> <li class="added-since-last-wd">Deprecated the <a href="struct.html#__svg__SVGDocument__rootElement">rootElement</a> attribute.</li> <li class="added-since-last-wd">Defined event handler content attributes and IDL attributes on the root <a>'svg'</a> element to be for events fired at the <a>Window</a>, like HTML's event handler content attributes and IDL attribute on <code>body</code>.</li> <li class="added-since-last-wd">Moved the <a>'image'</a> element to the <a href='embedded.html'>Embedded Content chapter</a>.</li> + + <li class="added-since-last-wd">Removed the <code>SVGElementInstance</code> and <code>SVGElementInstanceList</code> interfaces, and the corresponding attributes on the <a>SVGUseElement</a> interface.</li> + + <li class="added-since-last-wd">Changed the <a>'use'</a> element event flow to follow the Shadow DOM spec.</li> </ul> <h3 id="styling">Styling chapter</h3> <ul> <li>Removed the <span class="attr-name">'contentStyleType'</span> attribute.</li> </ul> @@ -354,16 +358,18 @@ have been made.</p> <li>Added normative references to CSS3 Color, CSS3 Fonts, CSS3 Line Box, CSS3 Transforms, CSS3 UI, CSS3 Values and Units, CSS4 Images, Filter Effects, WOFF, Web IDL.</li> <li>Added informative references to CSS 3 Transitions and Animations.</li> <li class='added-since-last-wd'>Updated reference from DOM Level 2 Events to DOM Level 3 Events and added a normative reference to UI Events.</li> <li class='added-since-last-wd'>Added normative reference to WAI-ARIA 1.1.</li> + + <li class='added-since-last-wd'>Added normative reference to Shadow DOM.</li> </ul> <h3 id="idlindex">IDL Index appendix</h3> <ul> <li>Added this appendix.</li> </ul> diff --git a/master/definitions.xml b/master/definitions.xml --- a/master/definitions.xml +++ b/master/definitions.xml @@ -1203,18 +1203,16 @@ <interface name='SVGElement' href='types.html#InterfaceSVGElement'/> <interface name='SVGDefsElement' href='struct.html#InterfaceSVGDefsElement'/> <interface name='SVGTitleElement' href='struct.html#InterfaceSVGTitleElement'/> <interface name='SVGDescElement' href='struct.html#InterfaceSVGDescElement'/> <interface name='SVGDiscardeElement' href='struct.html#InterfaceSVGDescElement'/> <interface name='SVGSymbolElement' href='struct.html#InterfaceSVGSymbolElement'/> <interface name='SVGUseElement' href='struct.html#InterfaceSVGUseElement'/> <interface name='SVGPathElement' href='paths.html#InterfaceSVGPathElement'/> - <interface name='SVGElementInstance' href='struct.html#InterfaceSVGElementInstance'/> - <interface name='SVGElementInstanceList' href='struct.html#InterfaceSVGElementInstanceList'/> <interface name='SVGImageElement' href='struct.html#InterfaceSVGImageElement'/> <interface name='SVGSwitchElement' href='struct.html#InterfaceSVGSwitchElement'/> <interface name='GetSVGDocument' href='struct.html#InterfaceGetSVGDocument'/> <interface name='SVGAnimatedInteger' href='types.html#InterfaceSVGAnimatedInteger'/> <interface name='SVGAnimatedNumber' href='types.html#InterfaceSVGAnimatedNumber'/> <interface name='SVGAnimatedLength' href='types.html#InterfaceSVGAnimatedLength'/> <interface name='SVGAnimatedEnumeration' href='types.html#InterfaceSVGAnimatedEnumeration'/> <interface name='SVGViewSpec' href='types.html#InterfaceSVGViewSpec'/> diff --git a/master/idlindex.html b/master/idlindex.html --- a/master/idlindex.html +++ b/master/idlindex.html @@ -47,18 +47,16 @@ <li><a>SVGClipPathElement</a></li> <li><a>SVGColorProfileElement</a></li> <li><a>SVGColorProfileRule</a></li> <li><a>SVGCursorElement</a></li> <li><a>SVGDefsElement</a></li> <li><a>SVGDescElement</a></li> <li><a>SVGDocument</a></li> <li><a>SVGElement</a></li> - <li><a>SVGElementInstance</a></li> - <li><a>SVGElementInstanceList</a></li> <li><a>SVGEllipseElement</a></li> <li><a>SVGFitToViewBox</a></li> <li><a>SVGFontElement</a></li> <li><a>SVGFontFaceElement</a></li> <li><a>SVGFontFaceFormatElement</a></li> <li><a>SVGFontFaceNameElement</a></li> <li><a>SVGFontFaceSrcElement</a></li> <li><a>SVGFontFaceUriElement</a></li> diff --git a/master/interact.html b/master/interact.html --- a/master/interact.html +++ b/master/interact.html @@ -539,21 +539,20 @@ event.) When an element is not displayed or one of its ancestors has a value of <span class="prop-value">none</span>), that element cannot be the target of pointer events.</p> <p>If a target element for the pointer event exists, then the event is dispatched to that element according to the normal <a href='http://www.w3.org/TR/2013/WD-DOM-Level-3-Events-20131105/#event-flow'>event flow</a> ([<a href='refs.html#ref-DOM3EVENTS'>DOM3EVENTS</a>], section 1.2). -Note, however, that if the target element is in a -<a>'use'</a> element shadow tree, that the event flow -will include <a>SVGElementInstance</a> objects. See -<a href='struct.html#UseElement'>The <span class='element-name'>'use'</span> element</a> -for details.</p> +For shadow trees created by the <a>'use'</a> element or via script, +the event must follow the Shadow DOM +<a href="http://www.w3.org/TR/2013/WD-shadow-dom-20130514/#event-dispatch">event dispatching algorithm</a> [<a href="refs.html#ref-SHADOWDOM">SHADOWDOM</a>] +</p> <p>If a target element for the pointer event does not exist, then the event is ignored.</p> <h2 id="pointer-processing">Hit-testing and processing order for user interface events</h2> <p>There are two distinct aspects of pointer-device interaction with an element or area:</p> diff --git a/master/refs.html b/master/refs.html --- a/master/refs.html +++ b/master/refs.html @@ -396,16 +396,24 @@ </dd> <dt id="ref-RFC4329" class="normref">[RFC4329]</dt> <dd> <cite><a href="http://www.ietf.org/rfc/rfc4329.txt">Scripting Media Types</a></cite>, B. Höhrmann, April 2006. <br/>Available at http://www.ietf.org/rfc/rfc4329.txt. </dd> + + <dt id="ref-SHADOWDOM" class="normref">[SHADOWDOM]</dt> + <dd> + <cite class="w3cwd"><a href="http://www.w3.org/TR/2013/WD-shadow-dom-20130514/">Shadow DOM</a></cite>, + D. Glazkov, eds. 14 May 2013. + <br/>This edition of Shadow DOM is http://www.w3.org/TR/2013/WD-shadow-dom-20130514/. + <br/>The <a href="http://www.w3.org/TR/shadow-dom/">latest edition of Shadow DOM</a> is available at http://www.w3.org/TR/shadow-dom/. + </dd> <dt id="ref-SMIL" class="normref">[SMIL]</dt> <dd> <cite class="w3crec"><a href="http://www.w3.org/TR/2008/REC-SMIL3-20081201/">Synchronized Multimedia Integration Language (SMIL 3.0)</a></cite>, D. Bulterman <em>et al.</em>, eds. 01 December 2008. <br/>This edition of SMIL is http://www.w3.org/TR/2008/REC-SMIL3-20081201/. <br/>The <a href="http://www.w3.org/TR/smil/">latest edition of SMIL</a> is available at http://www.w3.org/TR/smil/. </dd> diff --git a/master/struct.html b/master/struct.html --- a/master/struct.html +++ b/master/struct.html @@ -1170,44 +1170,43 @@ we define <a>'use'</a> to work in terms element had been textually included as a deeply cloned child of the <a>'use'</a> element. The referenced element inherits properties from the <a>'use'</a> element and the <a>'use'</a> element's ancestors. An instance of a referenced element does not inherit properties from the referenced element's original parents.</p> <p>If event attributes are assigned to referenced elements, then the actual target for the event will be the -<a>SVGElementInstance</a> object -within the "instance tree" corresponding to the given +element within the "instance tree" corresponding to the given referenced element.</p> -<p class="issue">Once we define <a>'use'</a> in terms of -Web Components, will we drop instance trees?</p> +<p class="issue">Should reference <a href="http://www.w3.org/TR/2013/WD-shadow-dom-20130514/#events">Shadow DOM</a> +for the event handling. Note that events will be retargeted to maintain the encapsulation, +ie. not to leak the original target inside a shadow tree.</p> <p>The event handling for the non-exposed tree works as if the referenced element had been textually included as a deeply cloned child of the <a>'use'</a> -element, except that events are dispatched to the <a>SVGElementInstance</a> objects. The -event's target and currentTarget attributes are set to the -<a>SVGElementInstance</a> that +element, and events are dispatched according to the shadow tree +<a href="http://www.w3.org/TR/2013/WD-shadow-dom-20130514/#event-dispatch">event dispatching algorithm</a> [<a href="refs.html#ref-SHADOWDOM">SHADOWDOM</a>]. +The event's target and currentTarget attributes are set to the +instance tree element that corresponds to the target and current target elements in the referenced subtree. An event propagates through the exposed and non-exposed portions of the tree in the same manner as it would in the regular document tree: first going from the root element to the <a>'use'</a> element and then through non-exposed tree elements in the capture phase, followed by the target phase at the target of the event, then bubbling back through non-exposed tree to the use element and then back through regular tree to the root element in bubbling -phase.</p> - -<p>An element and all its corresponding <a>SVGElementInstance</a> objects -share an event listener list. The currentTarget attribute of -the event can be used to determine through which object an -event listener was invoked.</p> +phase. In order to maintain encapsulation events must use the +<a href="http://www.w3.org/TR/2013/WD-shadow-dom-20130514/#event-retargeting">event retargeting algorithm</a> [<a href="refs.html#ref-SHADOWDOM">SHADOWDOM</a>] +when crossing from a non-exposed tree to the regular tree. +</p> <p>The behavior of the <a>'visibility'</a> property conforms to this model of property inheritance. Thus, specifying <span class="prop-value">'visibility:hidden'</span> on a <a>'use'</a> element does not guarantee that the referenced content will not be rendered. If the <a>'use'</a> element specifies <span class="prop-value">'visibility:hidden'</span> and the element it references specifies <span class="prop-value">'visibility:hidden'</span> or <span @@ -2972,18 +2971,16 @@ element. <p>The <a>SVGUseElement</a> interface corresponds to the <a>'use'</a> element.</p> <pre class="idl">interface <b>SVGUseElement</b> : <a>SVGGraphicsElement</a> { readonly attribute <a class="idlinterface" href="types.html#InterfaceSVGAnimatedLength">SVGAnimatedLength</a> <a href="struct.html#__svg__SVGUseElement__x">x</a>; readonly attribute <a class="idlinterface" href="types.html#InterfaceSVGAnimatedLength">SVGAnimatedLength</a> <a href="struct.html#__svg__SVGUseElement__y">y</a>; readonly attribute <a class="idlinterface" href="types.html#InterfaceSVGAnimatedLength">SVGAnimatedLength</a> <a href="struct.html#__svg__SVGUseElement__width">width</a>; readonly attribute <a class="idlinterface" href="types.html#InterfaceSVGAnimatedLength">SVGAnimatedLength</a> <a href="struct.html#__svg__SVGUseElement__height">height</a>; - readonly attribute <a class="idlinterface" href="struct.html#InterfaceSVGElementInstance">SVGElementInstance</a> <a href="struct.html#__svg__SVGUseElement__instanceRoot">instanceRoot</a>; - readonly attribute <a class="idlinterface" href="struct.html#InterfaceSVGElementInstance">SVGElementInstance</a> <a href="struct.html#__svg__SVGUseElement__animatedInstanceRoot">animatedInstanceRoot</a>; }; <a>SVGUseElement</a> implements <a>SVGURIReference</a>;</pre> <dl class="interface"> <dt class="attributes-header">Attributes:</dt> <dd> <dl class="attributes"> @@ -3017,260 +3014,23 @@ element. <dd class="attribute"> <div> Corresponds to attribute <a>'height'</a> on the given <a>'use'</a> element. </div> </dd> -<dt id="__svg__SVGUseElement__instanceRoot" class="attribute"><b>instanceRoot</b><span class="idl-type-parenthetical"> (readonly <a class="idlinterface" href="struct.html#InterfaceSVGElementInstance">SVGElementInstance</a>)</span></dt> -<dd class="attribute"> -<div> -The root of the "instance tree". See description of -<a>SVGElementInstance</a> for a discussion on the instance tree. - -</div> -</dd> - -<dt id="__svg__SVGUseElement__animatedInstanceRoot" class="attribute"><b>animatedInstanceRoot</b><span class="idl-type-parenthetical"> (readonly <a class="idlinterface" href="struct.html#InterfaceSVGElementInstance">SVGElementInstance</a>)</span></dt> -<dd class="attribute"> -<div> -If the <a>'xlink:href'</a> attribute is being animated, contains the current -animated root of the "instance tree". If the <a>'xlink:href'</a> attribute -is not currently being animated, contains the same value as -<a>instanceRoot</a>. See description of <a>SVGElementInstance</a> -for a discussion on the instance tree. - -</div> -</dd> </dl> </dd> </dl> </edit:with> -<h3 id="InterfaceSVGElementInstance">Interface SVGElementInstance</h3> - - - -<p>For each <a>'use'</a> element, the SVG DOM maintains a shadow tree (the -"instance tree") of objects of type <a>SVGElementInstance</a>. An -<a>SVGElementInstance</a> represents a single node in the instance tree. -The root object in the instance tree is pointed to by the -<a>SVGUseElement::instanceRoot</a> attribute on the -<a>SVGUseElement</a> object for the corresponding <a>'use'</a> element. -</p> - - -<p>If the <a>'use'</a> element references a simple graphics element such as -a <a>'rect'</a>, then there is only a single <a>SVGElementInstance</a> -object, and the <a>correspondingElement</a> attribute on this -<a>SVGElementInstance</a> object is the <a>SVGRectElement</a> that -corresponds to the referenced <a>'rect'</a> element. -</p> - - -<p>If the <a>'use'</a> element references a <a>'g'</a> which contains two -<a>'rect'</a> elements, then the instance tree contains three -<a>SVGElementInstance</a> objects, a root <a>SVGElementInstance</a> object -whose <a>correspondingElement</a> is the <a>SVGGElement</a> object for the -<a>'g'</a>, and then two child <a>SVGElementInstance</a> objects, each of -which has its <a>correspondingElement</a> that is an <a>SVGRectElement</a> -object. -</p> - - -<p>If the referenced object is itself a <a>'use'</a>, or if there are -<a>'use'</a> subelements within the referenced object, the instance tree -will contain recursive expansion of the indirect references to form a -complete tree. For example, if a <a>'use'</a> element references a -<a>'g'</a>, and the <a>'g'</a> itself contains a <a>'use'</a>, and that -<a>'use'</a> references a <a>'rect'</a>, then the instance tree for the -original (outermost) <a>'use'</a> will consist of a hierarchy of -<a>SVGElementInstance</a> objects, as follows: -</p> - -<pre>SVGElementInstance #1 (parentNode=null, firstChild=#2, correspondingElement is the 'g') - SVGElementInstance #2 (parentNode=#1, firstChild=#3, correspondingElement is the other 'use') - SVGElementInstance #3 (parentNode=#2, firstChild=null, correspondingElement is the 'rect') -</pre> -<pre class="idl">interface <b>SVGElementInstance</b> : <a>EventTarget</a> { - readonly attribute <a class="idlinterface" href="types.html#InterfaceSVGElement">SVGElement</a> <a href="struct.html#__svg__SVGElementInstance__correspondingElement">correspondingElement</a>; - readonly attribute <a class="idlinterface" href="struct.html#InterfaceSVGUseElement">SVGUseElement</a> <a href="struct.html#__svg__SVGElementInstance__correspondingUseElement">correspondingUseElement</a>; - readonly attribute <a class="idlinterface" href="struct.html#InterfaceSVGElementInstance">SVGElementInstance</a> <a href="struct.html#__svg__SVGElementInstance__parentNode">parentNode</a>; - readonly attribute <a class="idlinterface" href="struct.html#InterfaceSVGElementInstanceList">SVGElementInstanceList</a> <a href="struct.html#__svg__SVGElementInstance__childNodes">childNodes</a>; - readonly attribute <a class="idlinterface" href="struct.html#InterfaceSVGElementInstance">SVGElementInstance</a> <a href="struct.html#__svg__SVGElementInstance__firstChild">firstChild</a>; - readonly attribute <a class="idlinterface" href="struct.html#InterfaceSVGElementInstance">SVGElementInstance</a> <a href="struct.html#__svg__SVGElementInstance__lastChild">lastChild</a>; - readonly attribute <a class="idlinterface" href="struct.html#InterfaceSVGElementInstance">SVGElementInstance</a> <a href="struct.html#__svg__SVGElementInstance__previousSibling">previousSibling</a>; - readonly attribute <a class="idlinterface" href="struct.html#InterfaceSVGElementInstance">SVGElementInstance</a> <a href="struct.html#__svg__SVGElementInstance__nextSibling">nextSibling</a>; -};</pre><dl class="interface"> -<dt class="attributes-header">Attributes:</dt> -<dd> -<dl class="attributes"> - -<dt id="__svg__SVGElementInstance__correspondingElement" - class="attribute first-child"><b>correspondingElement</b><span class="idl-type-parenthetical"> (readonly <a class="idlinterface" href="types.html#InterfaceSVGElement">SVGElement</a>)</span></dt> -<dd class="attribute"> -<div> -The corresponding element to which this object is an instance. For -example, if a <a>'use'</a> element references a <a>'rect'</a> element, -then an <a>SVGElementInstance</a> is created, with its -<a>correspondingElement</a> being the <a>SVGRectElement</a> object -for the <a>'rect'</a> element. - -</div> -</dd> - -<dt id="__svg__SVGElementInstance__correspondingUseElement" class="attribute"><b>correspondingUseElement</b><span class="idl-type-parenthetical"> (readonly <a class="idlinterface" href="struct.html#InterfaceSVGUseElement">SVGUseElement</a>)</span></dt> -<dd class="attribute"> -<div> -The corresponding <a>'use'</a> element to which this -<a>SVGElementInstance</a> object belongs. When <a>'use'</a> elements are -nested (e.g., a <a>'use'</a> references another <a>'use'</a> which -references a graphics element such as a <a>'rect'</a>), then the -<a>correspondingUseElement</a> is the outermost <a>'use'</a> (i.e., the -one which indirectly references the <a>'rect'</a>, not the one with the -direct reference). - -</div> -</dd> - -<dt id="__svg__SVGElementInstance__parentNode" class="attribute"><b>parentNode</b><span class="idl-type-parenthetical"> (readonly <a class="idlinterface" href="struct.html#InterfaceSVGElementInstance">SVGElementInstance</a>)</span></dt> -<dd class="attribute"> -<div> -The parent of this <a>SVGElementInstance</a> within the instance tree. -All <a>SVGElementInstance</a> objects have a parent except the -<a>SVGElementInstance</a> which corresponds to the element which was -directly referenced by the <a>'use'</a> element, in which case -<a>parentNode</a> is null. - -</div> -</dd> - -<dt id="__svg__SVGElementInstance__childNodes" class="attribute"><b>childNodes</b><span class="idl-type-parenthetical"> (readonly <a class="idlinterface" href="struct.html#InterfaceSVGElementInstanceList">SVGElementInstanceList</a>)</span></dt> -<dd class="attribute"> -<div> -An <a>SVGElementInstanceList</a> that contains all children of this -<a>SVGElementInstance</a> within the instance tree. If there are no -children, this is an <a>SVGElementInstanceList</a> containing no entries -(i.e., an empty list). - -</div> -</dd> - -<dt id="__svg__SVGElementInstance__firstChild" class="attribute"><b>firstChild</b><span class="idl-type-parenthetical"> (readonly <a class="idlinterface" href="struct.html#InterfaceSVGElementInstance">SVGElementInstance</a>)</span></dt> -<dd class="attribute"> -<div> -The first child of this <a>SVGElementInstance</a> within the instance -tree. If there is no such <a>SVGElementInstance</a>, this returns null. - -</div> -</dd> - -<dt id="__svg__SVGElementInstance__lastChild" class="attribute"><b>lastChild</b><span class="idl-type-parenthetical"> (readonly <a class="idlinterface" href="struct.html#InterfaceSVGElementInstance">SVGElementInstance</a>)</span></dt> -<dd class="attribute"> -<div> -The last child of this <a>SVGElementInstance</a> within the instance -tree. If there is no such <a>SVGElementInstance</a>, this returns null. - -</div> -</dd> - -<dt id="__svg__SVGElementInstance__previousSibling" class="attribute"><b>previousSibling</b><span class="idl-type-parenthetical"> (readonly <a class="idlinterface" href="struct.html#InterfaceSVGElementInstance">SVGElementInstance</a>)</span></dt> -<dd class="attribute"> -<div> -The <a>SVGElementInstance</a> immediately preceding this -<a>SVGElementInstance</a>. If there is no such <a>SVGElementInstance</a>, -this returns null. - -</div> -</dd> - -<dt id="__svg__SVGElementInstance__nextSibling" class="attribute"><b>nextSibling</b><span class="idl-type-parenthetical"> (readonly <a class="idlinterface" href="struct.html#InterfaceSVGElementInstance">SVGElementInstance</a>)</span></dt> -<dd class="attribute"> -<div> -The <a>SVGElementInstance</a> immediately following this -<a>SVGElementInstance</a>. If there is no such <a>SVGElementInstance</a>, -this returns null. - -</div> -</dd> -</dl> -</dd> -</dl> - - -<h3 id="InterfaceSVGElementInstanceList">Interface SVGElementInstanceList</h3> - - -The <a>SVGElementInstanceList</a> interface provides the abstraction of an -ordered collection of <a>SVGElementInstance</a> objects, without defining -or constraining how this collection is implemented. -<pre class="idl">interface <b>SVGElementInstanceList</b> { - - readonly attribute unsigned long <a href="struct.html#__svg__SVGElementInstanceList__length">length</a>; - - <a class="idlinterface" href="struct.html#InterfaceSVGElementInstance">SVGElementInstance</a> <a href="struct.html#__svg__SVGElementInstanceList__item">item</a>(unsigned long index); -};</pre><dl class="interface"> -<dt class="attributes-header">Attributes:</dt> -<dd> -<dl class="attributes"> - -<dt id="__svg__SVGElementInstanceList__length" class="attribute first-child"><b>length</b><span class="idl-type-parenthetical"> (readonly unsigned long)</span></dt> -<dd class="attribute"> -<div> -The number of <a>SVGElementInstance</a> objects in the list. The range -of valid child indices is 0 to <a>length</a>-1 inclusive. - -</div> -</dd> -</dl> -</dd> -<dt class="operations-header">Operations:</dt> -<dd> -<dl class="attributes"> - -<dt id="__svg__SVGElementInstanceList__item" class="operation first-child"><a class="idlinterface" href="struct.html#InterfaceSVGElementInstance">SVGElementInstance</a> <b>item</b>(unsigned long <var>index</var>) -</dt> -<dd class="operation"> -<div> -Returns the <var>index</var>th item in the collection. If -<var>index</var> is greater than or equal to the number of nodes in the -list, this returns null. - - -</div> -<dl class="operation"> -<dt class="parameters-header">Parameters</dt> -<dd> -<ol class="parameters"> -<li class="parameter first-child"> -<div>unsigned long <var>index</var></div> -<div> Index into the collection. - -</div> -</li> -</ol> -</dd> -<dt class="returns-header">Returns</dt> -<dd> -<div> The <a>SVGElementInstance</a> object at the <var>index</var>th -position in the <a>SVGElementInstanceList</a>, or null if that is not -a valid index. - -</div> -</dd> -</dl> -</dd> -</dl> -</dd> -</dl> - <h3 id="InterfaceSVGSwitchElement">Interface SVGSwitchElement</h3> <edit:with element='switch'> The <a>SVGSwitchElement</a> interface corresponds to the <a>'switch'</a> element. <pre class="idl">interface <b>SVGSwitchElement</b> : <a>SVGGraphicsElement</a> {
Received on Friday, 7 February 2014 14:13:41 UTC