Please note, this is a STATIC archive of website developer.mozilla.org from 03 Nov 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

Revision 1019272 of Document Object Model (DOM)

  • Revision slug: Web/API/Document_Object_Model
  • Revision title: Document Object Model (DOM)
  • Revision id: 1019272
  • Created:
  • Creator: chrisfillmore
  • Is current revision? No
  • Comment

Revision Content

{{DefaultAPISidebar("DOM")}}

The Document Object Model (DOM) is a programming interface for HTML, XML and SVG documents. It provides a structured representation of the document as a tree. The DOM defines methods that allow access to the tree, so that they can change the document structure, style and content. The DOM provides a representation of the document as a structured group of nodes and objects, possessing various properties and methods. Nodes can also have event handlers attached to them, and once an event is triggered, the event handlers get executed. Essentially, it connects web pages to scripts or programming languages.

Although the DOM is often accessed using JavaScript, it is not a part of the JavaScript language. It can also be accessed by other languages.

An introduction to the DOM is available.

DOM interfaces

  • {{domxref("Attr")}}
  • {{domxref("CharacterData")}}
  • {{domxref("ChildNode")}} {{experimental_inline}}
  • {{domxref("Comment")}}
  • {{domxref("CustomEvent")}}
  • {{domxref("Document")}}
  • {{domxref("DocumentFragment")}}
  • {{domxref("DocumentType")}}
  • {{domxref("DOMError")}}
  • {{domxref("DOMException")}}
  • {{domxref("DOMImplementation")}}
  • {{domxref("DOMString")}}
  • {{domxref("DOMTimeStamp")}}
  • {{domxref("DOMSettableTokenList")}}
  • {{domxref("DOMStringList")}}
  • {{domxref("DOMTokenList")}}
  • {{domxref("Element")}}
  • {{domxref("Event")}}
  • {{domxref("EventTarget")}}
  • {{domxref("HTMLCollection")}}
  • {{domxref("MutationObserver")}}
  • {{domxref("MutationRecord")}}
  • {{domxref("Node")}}
  • {{domxref("NodeFilter")}}
  • {{domxref("NodeIterator")}}
  • {{domxref("NodeList")}}
  • {{domxref("ParentNode")}} {{experimental_inline}}
  • {{domxref("ProcessingInstruction")}}
  • {{domxref("Promise")}} {{experimental_inline}}
  • {{domxref("PromiseResolver")}} {{experimental_inline}}
  • {{domxref("Range")}}
  • {{domxref("Text")}}
  • {{domxref("TreeWalker")}}
  • {{domxref("URL")}}
  • {{domxref("Window")}}
  • {{domxref("Worker")}}
  • {{domxref("XMLDocument")}} {{experimental_inline}}

Obsolete DOM interfaces

The Document Object Model has been highly simplified. To achieve this, the following interfaces present in the different DOM level 3 or earlier specification have been removed. It is still not very clear whether some may be reintroduced or not, but for the time being they have to be considered as obsolete and should be avoided:

  • {{domxref("CDATASection")}}
  • {{domxref("DOMConfiguration")}}
  • {{domxref("DOMErrorHandler")}}
  • {{domxref("DOMImplementationList")}}
  • {{domxref("DOMImplementationRegistry")}}
  • {{domxref("DOMImplementationSource")}}
  • {{domxref("DOMLocator")}}
  • {{domxref("DOMObject")}}
  • {{domxref("DOMUserData")}}
  • {{domxref("Entity")}}
  • {{domxref("EntityReference")}}
  • {{domxref("NamedNodeMap")}}
  • {{domxref("NameList")}}
  • {{domxref("Notation")}}
  • {{domxref("TypeInfo")}}
  • {{domxref("UserDataHandler")}}
  •  

HTML interfaces

A document containing HTML is described using the {{domxref("HTMLDocument")}} interface. Note that the HTML specification also extends the {{domxref("Document")}} interface.

An HTMLDocument object also gives access to various features of browsers  like the tab or the window, in which a page is drawn using the {{domxref("Window")}} interface, the {{domxref("window.style", "Style")}} associated to it (usually CSS), the history of the browser relative to the context, {{domxref("window.history", "History")}}. Eventually, {{domxref("Selection")}} is done on the document.

HTML element interfaces

  • {{domxref("HTMLAnchorElement")}}
  • {{domxref("HTMLAppletElement")}}
  • {{domxref("HTMLAreaElement")}}
  • {{domxref("HTMLAudioElement")}}
  • {{domxref("HTMLBaseElement")}}
  • {{domxref("HTMLBodyElement")}}
  • {{domxref("HTMLBRElement")}}
  • {{domxref("HTMLButtonElement")}}
  • {{domxref("HTMLCanvasElement")}}
  • {{domxref("HTMLDataElement")}}
  • {{domxref("HTMLDataListElement")}}
  • {{domxref("HTMLDirectoryElement")}}
  • {{domxref("HTMLDivElement")}}
  • {{domxref("HTMLDListElement")}}
  • {{domxref("HTMLElement")}}
  • {{domxref("HTMLEmbedElement")}}
  • {{domxref("HTMLFieldSetElement")}}
  • {{domxref("HTMLFontElement")}}
  • {{domxref("HTMLFormElement")}}
  • {{domxref("HTMLFrameElement")}}
  • {{domxref("HTMLFrameSetElement")}}
  • {{domxref("HTMLHeadElement")}}
  • {{domxref("HTMLHeadingElement")}}
  • {{domxref("HTMLHtmlElement")}}
  • {{domxref("HTMLHRElement")}}
  • {{domxref("HTMLIFrameElement")}}
  • {{domxref("HTMLImageElement")}}
  • {{domxref("HTMLInputElement")}}
  • {{domxref("HTMLKeygenElement")}}
  • {{domxref("HTMLLabelElement")}}
  • {{domxref("HTMLLegendElement")}}
  • {{domxref("HTMLLIElement")}}
  • {{domxref("HTMLLinkElement")}}
  • {{domxref("HTMLMapElement")}}
  • {{domxref("HTMLMediaElement")}}
  • {{domxref("HTMLMenuElement")}}
  • {{domxref("HTMLMetaElement")}}
  • {{domxref("HTMLMeterElement")}}
  • {{domxref("HTMLModElement")}}
  • {{domxref("HTMLObjectElement")}}
  • {{domxref("HTMLOListElement")}}
  • {{domxref("HTMLOptGroupElement")}}
  • {{domxref("HTMLOptionElement")}}
  • {{domxref("HTMLOutputElement")}}
  • {{domxref("HTMLParagraphElement")}}
  • {{domxref("HTMLParamElement")}}
  • {{domxref("HTMLPreElement")}}
  • {{domxref("HTMLProgressElement")}}
  • {{domxref("HTMLQuoteElement")}}
  • {{domxref("HTMLScriptElement")}}
  • {{domxref("HTMLSelectElement")}}
  • {{domxref("HTMLSourceElement")}}
  • {{domxref("HTMLSpanElement")}}
  • {{domxref("HTMLStyleElement")}}
  • {{domxref("HTMLTableElement")}}
  • {{domxref("HTMLTableCaptionElement")}}
  • {{domxref("HTMLTableCellElement")}}
  • {{domxref("HTMLTableDataCellElement")}}
  • {{domxref("HTMLTableHeaderCellElement")}}
  • {{domxref("HTMLTableColElement")}}
  • {{domxref("HTMLTableRowElement")}}
  • {{domxref("HTMLTableSectionElement")}}
  • {{domxref("HTMLTextAreaElement")}}
  • {{domxref("HTMLTimeElement")}}
  • {{domxref("HTMLTitleElement")}}
  • {{domxref("HTMLTrackElement")}}
  • {{domxref("HTMLUListElement")}}
  • {{domxref("HTMLUnknownElement")}}
  • {{domxref("HTMLVideoElement")}}

Other interfaces

  • {{domxref("CanvasRenderingContext2D")}}
  • {{domxref("CanvasGradient")}}
  • {{domxref("CanvasPattern")}}
  • {{domxref("TextMetrics")}}
  • {{domxref("ImageData")}}
  • {{domxref("CanvasPixelArray")}}
  • {{domxref("NotifyAudioAvailableEvent")}}
  • {{domxref("HTMLAllCollection")}}
  • {{domxref("HTMLFormControlsCollection")}}
  • {{domxref("HTMLOptionsCollection")}}
  • {{domxref("HTMLPropertiesCollection")}}
  • {{domxref("DOMStringMap")}}
  • {{domxref("RadioNodeList")}}
  • {{domxref("MediaError")}}

Obsolete HTML interfaces

  • {{domxref("HTMLBaseFontElement")}}
  • {{domxref("HTMLIsIndexElement")}}

SVG interfaces

SVG element interfaces

  • {{domxref("SVGAElement")}}
  • {{domxref("SVGAltGlyphElement")}}
  • {{domxref("SVGAltGlyphDefElement")}}
  • {{domxref("SVGAltGlyphItemElement")}}
  • {{domxref("SVGAnimationElement")}}
  • {{domxref("SVGAnimateElement")}}
  • {{domxref("SVGAnimateColorElement")}}
  • {{domxref("SVGAnimateMotionElement")}}
  • {{domxref("SVGAnimateTransformElement")}}
  • {{domxref("SVGCircleElement")}}
  • {{domxref("SVGClipPathElement")}}
  • {{domxref("SVGColorProfileElement")}}
  • {{domxref("SVGComponentTransferFunctionElement")}}
  • {{domxref("SVGCursorElement")}}
  • {{domxref("SVGDefsElement")}}
  • {{domxref("SVGDescElement")}}
  • {{domxref("SVGElement")}}
  • {{domxref("SVGEllipseElement")}}
  • {{domxref("SVGFEBlendElement")}}
  • {{domxref("SVGFEColorMatrixElement")}}
  • {{domxref("SVGFEComponentTransferElement")}}
  • {{domxref("SVGFECompositeElement")}}
  • {{domxref("SVGFEConvolveMatrixElement")}}
  • {{domxref("SVGFEDiffuseLightingElement")}}
  • {{domxref("SVGFEDisplacementMapElement")}}
  • {{domxref("SVGFEDistantLightElement")}}
  • {{domxref("SVGFEFloodElement")}}
  • {{domxref("SVGFEGaussianBlurElement")}}
  • {{domxref("SVGFEImageElement")}}
  • {{domxref("SVGFEMergeElement")}}
  • {{domxref("SVGFEMergeNodeElement")}}
  • {{domxref("SVGFEMorphologyElement")}}
  • {{domxref("SVGFEOffsetElement")}}
  • {{domxref("SVGFEPointLightElement")}}
  • {{domxref("SVGFESpecularLightingElement")}}
  • {{domxref("SVGFESpotLightElement")}}
  • {{domxref("SVGFETileElement")}}
  • {{domxref("SVGFETurbulenceElement")}}
  • {{domxref("SVGFEFuncRElement")}}
  • {{domxref("SVGFEFuncGElement")}}
  • {{domxref("SVGFEFuncBElement")}}
  • {{domxref("SVGFEFuncAElement")}}
  • {{domxref("SVGFilterElement")}}
  • {{domxref("SVGFilterPrimitiveStandardAttributes")}}
  • {{domxref("SVGFontElement")}}
  • {{domxref("SVGFontFaceElement")}}
  • {{domxref("SVGFontFaceFormatElement")}}
  • {{domxref("SVGFontFaceNameElement")}}
  • {{domxref("SVGFontFaceSrcElement")}}
  • {{domxref("SVGFontFaceUriElement")}}
  • {{domxref("SVGForeignObjectElement")}}
  • {{domxref("SVGGElement")}}
  • {{domxref("SVGGlyphElement")}}
  • {{domxref("SVGGlyphRefElement")}}
  • {{domxref("SVGGradientElement")}}
  • {{domxref("SVGHKernElement")}}
  • {{domxref("SVGImageElement")}}
  • {{domxref("SVGLinearGradientElement")}}
  • {{domxref("SVGLineElement")}}
  • {{domxref("SVGMarkerElement")}}
  • {{domxref("SVGMaskElement")}}
  • {{domxref("SVGMetadataElement")}}
  • {{domxref("SVGMissingGlyphElement")}}
  • {{domxref("SVGMPathElement")}}
  • {{domxref("SVGPathElement")}}
  • {{domxref("SVGPatternElement")}}
  • {{domxref("SVGPolylineElement")}}
  • {{domxref("SVGPolygonElement")}}
  • {{domxref("SVGRadialGradientElement")}}
  • {{domxref("SVGRectElement")}}
  • {{domxref("SVGScriptElement")}}
  • {{domxref("SVGSetElement")}}
  • {{domxref("SVGStopElement")}}
  • {{domxref("SVGStyleElement")}}
  • {{domxref("SVGSVGElement")}}
  • {{domxref("SVGSwitchElement")}}
  • {{domxref("SVGSymbolElement")}}
  • {{domxref("SVGTextElement")}}
  • {{domxref("SVGTextPathElement")}}
  • {{domxref("SVGTitleElement")}}
  • {{domxref("SVGTRefElement")}}
  • {{domxref("SVGTSpanElement")}}
  • {{domxref("SVGUseElement")}}
  • {{domxref("SVGViewElement")}}
  • {{domxref("SVGVKernElement")}}

SVG data type interfaces

Here are the DOM API for data types used in the definitions of SVG properties and attributes.

Note: Starting in {{Gecko("5.0")}}, the following SVG-related DOM interfaces representing lists of objects are now indexable and can be accessed ; in addition, they have a length property indicating the number of items in the lists: {{domxref("SVGLengthList")}}, {{domxref("SVGNumberList")}}, {{domxref("SVGPathSegList")}}, and {{domxref("SVGPointList")}}.

Static type

  • {{domxref("SVGAngle")}}
  • {{domxref("SVGColor")}}
  • {{domxref("SVGICCColor")}}
  • {{domxref("SVGElementInstance")}}
  • {{domxref("SVGElementInstanceList")}}
  • {{domxref("SVGLength")}}
  • {{domxref("SVGLengthList")}}
  • {{domxref("SVGMatrix")}}
  • {{domxref("SVGNumber")}}
  • {{domxref("SVGNumberList")}}
  • {{domxref("SVGPaint")}}
  • {{domxref("SVGPoint")}}
  • {{domxref("SVGPointList")}}
  • {{domxref("SVGPreserveAspectRatio")}}
  • {{domxref("SVGRect")}}
  • {{domxref("SVGStringList")}}
  • {{domxref("SVGTransform")}}
  • {{domxref("SVGTransformList")}}

Animated type

  • {{domxref("SVGAnimatedAngle")}}
  • {{domxref("SVGAnimatedBoolean")}}
  • {{domxref("SVGAnimatedEnumeration")}}
  • {{domxref("SVGAnimatedInteger")}}
  • {{domxref("SVGAnimatedLength")}}
  • {{domxref("SVGAnimatedLengthList")}}
  • {{domxref("SVGAnimatedNumber")}}
  • {{domxref("SVGAnimatedNumberList")}}
  • {{domxref("SVGAnimatedPreserveAspectRatio")}}
  • {{domxref("SVGAnimatedRect")}}
  • {{domxref("SVGAnimatedString")}}
  • {{domxref("SVGAnimatedTransformList")}}
  • {{domxref("ElementTimeControl")}}
  • {{domxref("TimeEvent")}}

Other SVG interfaces

  • {{domxref("SVGAnimatedPathData")}}
  • {{domxref("SVGAnimatedPoints")}}
  • {{domxref("SVGColorProfileRule")}}
  • {{domxref("SVGCSSRule")}}
  • {{domxref("SVGExternalResourcesRequired")}}
  • {{domxref("SVGFitToViewBox")}}
  • {{domxref("SVGLangSpace")}}
  • {{domxref("SVGLocatable")}}
  • {{domxref("SVGRenderingIntent")}}
  • {{domxref("SVGStylable")}}
  • {{domxref("SVGTests")}}
  • {{domxref("SVGTextContentElement")}}
  • {{domxref("SVGTextPositioningElement")}}
  • {{domxref("SVGTransformable")}}
  • {{domxref("SVGUnitTypes")}}
  • {{domxref("SVGURIReference")}}
  • {{domxref("SVGViewSpec")}}
  • {{domxref("SVGZoomAndPan")}}

See also

Revision Source

<p>{{DefaultAPISidebar("DOM")}}</p>

<p>The <strong>Document Object Model (<em>DOM</em>)</strong> is a programming interface for HTML, XML and SVG documents. It provides a structured representation of the document as a tree.&nbsp;The DOM&nbsp;defines methods that allow access to the tree, so that they can change the document structure, style and content. The DOM provides a representation of the document as a structured group of nodes and objects, possessing various&nbsp;properties and methods. Nodes can also have event handlers attached to them, and once an event is triggered, the event handlers get executed. Essentially, it connects web pages to scripts or programming languages.</p>

<p>Although the DOM is often&nbsp;accessed using JavaScript,&nbsp;it&nbsp;is not a part of the JavaScript language.&nbsp;It can also be accessed by other languages.</p>

<p>An <a href="/en-US/docs/DOM/DOM_Reference/Introduction">introduction</a> to the DOM is available.</p>

<h2 id="DOM_interfaces">DOM interfaces</h2>

<div class="index">
<ul>
 <li>{{domxref("Attr")}}</li>
 <li>{{domxref("CharacterData")}}</li>
 <li>{{domxref("ChildNode")}} {{experimental_inline}}</li>
 <li>{{domxref("Comment")}}</li>
 <li>{{domxref("CustomEvent")}}</li>
 <li>{{domxref("Document")}}</li>
 <li>{{domxref("DocumentFragment")}}</li>
 <li>{{domxref("DocumentType")}}</li>
 <li>{{domxref("DOMError")}}</li>
 <li>{{domxref("DOMException")}}</li>
 <li>{{domxref("DOMImplementation")}}</li>
 <li>{{domxref("DOMString")}}</li>
 <li>{{domxref("DOMTimeStamp")}}</li>
 <li>{{domxref("DOMSettableTokenList")}}</li>
 <li>{{domxref("DOMStringList")}}</li>
 <li>{{domxref("DOMTokenList")}}</li>
 <li>{{domxref("Element")}}</li>
 <li>{{domxref("Event")}}</li>
 <li>{{domxref("EventTarget")}}</li>
 <li>{{domxref("HTMLCollection")}}</li>
 <li>{{domxref("MutationObserver")}}</li>
 <li>{{domxref("MutationRecord")}}</li>
 <li>{{domxref("Node")}}</li>
 <li>{{domxref("NodeFilter")}}</li>
 <li>{{domxref("NodeIterator")}}</li>
 <li>{{domxref("NodeList")}}</li>
 <li>{{domxref("ParentNode")}} {{experimental_inline}}</li>
 <li>{{domxref("ProcessingInstruction")}}</li>
 <li>{{domxref("Promise")}} {{experimental_inline}}</li>
 <li>{{domxref("PromiseResolver")}} {{experimental_inline}}</li>
 <li>{{domxref("Range")}}</li>
 <li>{{domxref("Text")}}</li>
 <li>{{domxref("TreeWalker")}}</li>
 <li>{{domxref("URL")}}</li>
 <li>{{domxref("Window")}}</li>
 <li>{{domxref("Worker")}}</li>
 <li>{{domxref("XMLDocument")}} {{experimental_inline}}</li>
</ul>
</div>

<h2 id="Obsolete_DOM_interfaces">Obsolete DOM interfaces</h2>

<p>The Document Object Model has been&nbsp;highly&nbsp;simplified. To achieve this, the following interfaces present in the different DOM level 3 or earlier specification have been removed. It is still not very&nbsp;clear whether&nbsp;some may be reintroduced or not, but for the time being&nbsp;they have to be considered as obsolete and should be avoided:</p>

<div class="index">
<ul>
 <li>{{domxref("CDATASection")}}</li>
 <li>{{domxref("DOMConfiguration")}}</li>
 <li>{{domxref("DOMErrorHandler")}}</li>
 <li>{{domxref("DOMImplementationList")}}</li>
 <li>{{domxref("DOMImplementationRegistry")}}</li>
 <li>{{domxref("DOMImplementationSource")}}</li>
 <li>{{domxref("DOMLocator")}}</li>
 <li>{{domxref("DOMObject")}}</li>
 <li>{{domxref("DOMUserData")}}</li>
 <li>{{domxref("Entity")}}</li>
 <li>{{domxref("EntityReference")}}</li>
 <li>{{domxref("NamedNodeMap")}}</li>
 <li>{{domxref("NameList")}}</li>
 <li>{{domxref("Notation")}}</li>
 <li>{{domxref("TypeInfo")}}</li>
 <li>{{domxref("UserDataHandler")}}</li>
 <li>&nbsp;</li>
</ul>
</div>

<h2 id="HTML_interfaces">HTML interfaces</h2>

<p>A document containing HTML is described using the {{domxref("HTMLDocument")}} interface. Note that the HTML specification also extends the {{domxref("Document")}} interface.</p>

<p>An <code>HTMLDocument</code> object also gives access to various&nbsp;features of browsers&nbsp;&nbsp;like&nbsp;the tab&nbsp;or the window, in which a page is drawn using the {{domxref("Window")}} interface, the {{domxref("window.style", "Style")}} associated to it (usually CSS), the history of the browser relative to the context, {{domxref("window.history", "History")}}. Eventually,&nbsp;{{domxref("Selection")}} is&nbsp;done on the document.</p>

<h3 id="HTML_element_interfaces">HTML element interfaces</h3>

<div class="index">
<ul>
 <li>{{domxref("HTMLAnchorElement")}}</li>
 <li>{{domxref("HTMLAppletElement")}}</li>
 <li>{{domxref("HTMLAreaElement")}}</li>
 <li>{{domxref("HTMLAudioElement")}}</li>
 <li>{{domxref("HTMLBaseElement")}}</li>
 <li>{{domxref("HTMLBodyElement")}}</li>
 <li>{{domxref("HTMLBRElement")}}</li>
 <li>{{domxref("HTMLButtonElement")}}</li>
 <li>{{domxref("HTMLCanvasElement")}}</li>
 <li>{{domxref("HTMLDataElement")}}</li>
 <li>{{domxref("HTMLDataListElement")}}</li>
 <li>{{domxref("HTMLDirectoryElement")}}</li>
 <li>{{domxref("HTMLDivElement")}}</li>
 <li>{{domxref("HTMLDListElement")}}</li>
 <li>{{domxref("HTMLElement")}}</li>
 <li>{{domxref("HTMLEmbedElement")}}</li>
 <li>{{domxref("HTMLFieldSetElement")}}</li>
 <li>{{domxref("HTMLFontElement")}}</li>
 <li>{{domxref("HTMLFormElement")}}</li>
 <li>{{domxref("HTMLFrameElement")}}</li>
 <li>{{domxref("HTMLFrameSetElement")}}</li>
 <li>{{domxref("HTMLHeadElement")}}</li>
 <li>{{domxref("HTMLHeadingElement")}}</li>
 <li>{{domxref("HTMLHtmlElement")}}</li>
 <li>{{domxref("HTMLHRElement")}}</li>
 <li>{{domxref("HTMLIFrameElement")}}</li>
 <li>{{domxref("HTMLImageElement")}}</li>
 <li>{{domxref("HTMLInputElement")}}</li>
 <li>{{domxref("HTMLKeygenElement")}}</li>
 <li>{{domxref("HTMLLabelElement")}}</li>
 <li>{{domxref("HTMLLegendElement")}}</li>
 <li>{{domxref("HTMLLIElement")}}</li>
 <li>{{domxref("HTMLLinkElement")}}</li>
 <li>{{domxref("HTMLMapElement")}}</li>
 <li>{{domxref("HTMLMediaElement")}}</li>
 <li>{{domxref("HTMLMenuElement")}}</li>
 <li>{{domxref("HTMLMetaElement")}}</li>
 <li>{{domxref("HTMLMeterElement")}}</li>
 <li>{{domxref("HTMLModElement")}}</li>
 <li>{{domxref("HTMLObjectElement")}}</li>
 <li>{{domxref("HTMLOListElement")}}</li>
 <li>{{domxref("HTMLOptGroupElement")}}</li>
 <li>{{domxref("HTMLOptionElement")}}</li>
 <li>{{domxref("HTMLOutputElement")}}</li>
 <li>{{domxref("HTMLParagraphElement")}}</li>
 <li>{{domxref("HTMLParamElement")}}</li>
 <li>{{domxref("HTMLPreElement")}}</li>
 <li>{{domxref("HTMLProgressElement")}}</li>
 <li>{{domxref("HTMLQuoteElement")}}</li>
 <li>{{domxref("HTMLScriptElement")}}</li>
 <li>{{domxref("HTMLSelectElement")}}</li>
 <li>{{domxref("HTMLSourceElement")}}</li>
 <li>{{domxref("HTMLSpanElement")}}</li>
 <li>{{domxref("HTMLStyleElement")}}</li>
 <li>{{domxref("HTMLTableElement")}}</li>
 <li>{{domxref("HTMLTableCaptionElement")}}</li>
 <li>{{domxref("HTMLTableCellElement")}}</li>
 <li>{{domxref("HTMLTableDataCellElement")}}</li>
 <li>{{domxref("HTMLTableHeaderCellElement")}}</li>
 <li>{{domxref("HTMLTableColElement")}}</li>
 <li>{{domxref("HTMLTableRowElement")}}</li>
 <li>{{domxref("HTMLTableSectionElement")}}</li>
 <li>{{domxref("HTMLTextAreaElement")}}</li>
 <li>{{domxref("HTMLTimeElement")}}</li>
 <li>{{domxref("HTMLTitleElement")}}</li>
 <li>{{domxref("HTMLTrackElement")}}</li>
 <li>{{domxref("HTMLUListElement")}}</li>
 <li>{{domxref("HTMLUnknownElement")}}</li>
 <li>{{domxref("HTMLVideoElement")}}</li>
</ul>
</div>

<h3 id="Other_interfaces">Other interfaces</h3>

<div class="index">
<ul>
 <li>{{domxref("CanvasRenderingContext2D")}}</li>
 <li>{{domxref("CanvasGradient")}}</li>
 <li>{{domxref("CanvasPattern")}}</li>
 <li>{{domxref("TextMetrics")}}</li>
 <li>{{domxref("ImageData")}}</li>
 <li>{{domxref("CanvasPixelArray")}}</li>
 <li>{{domxref("NotifyAudioAvailableEvent")}}</li>
 <li>{{domxref("HTMLAllCollection")}}</li>
 <li>{{domxref("HTMLFormControlsCollection")}}</li>
 <li>{{domxref("HTMLOptionsCollection")}}</li>
 <li>{{domxref("HTMLPropertiesCollection")}}</li>
 <li>{{domxref("DOMStringMap")}}</li>
 <li>{{domxref("RadioNodeList")}}</li>
 <li>{{domxref("MediaError")}}</li>
</ul>
</div>

<h3 id="Obsolete_HTML_interfaces">Obsolete HTML interfaces</h3>

<div class="index">
<ul>
 <li>{{domxref("HTMLBaseFontElement")}}</li>
 <li>{{domxref("HTMLIsIndexElement")}}</li>
</ul>
</div>

<h2 id="SVG_interfaces">SVG interfaces</h2>

<h3 id="SVG_element_interfaces">SVG element interfaces</h3>

<div class="index">
<ul>
 <li>{{domxref("SVGAElement")}}</li>
 <li>{{domxref("SVGAltGlyphElement")}}</li>
 <li>{{domxref("SVGAltGlyphDefElement")}}</li>
 <li>{{domxref("SVGAltGlyphItemElement")}}</li>
 <li>{{domxref("SVGAnimationElement")}}</li>
 <li>{{domxref("SVGAnimateElement")}}</li>
 <li>{{domxref("SVGAnimateColorElement")}}</li>
 <li>{{domxref("SVGAnimateMotionElement")}}</li>
 <li>{{domxref("SVGAnimateTransformElement")}}</li>
 <li>{{domxref("SVGCircleElement")}}</li>
 <li>{{domxref("SVGClipPathElement")}}</li>
 <li>{{domxref("SVGColorProfileElement")}}</li>
 <li>{{domxref("SVGComponentTransferFunctionElement")}}</li>
 <li>{{domxref("SVGCursorElement")}}</li>
 <li>{{domxref("SVGDefsElement")}}</li>
 <li>{{domxref("SVGDescElement")}}</li>
 <li>{{domxref("SVGElement")}}</li>
 <li>{{domxref("SVGEllipseElement")}}</li>
 <li>{{domxref("SVGFEBlendElement")}}</li>
 <li>{{domxref("SVGFEColorMatrixElement")}}</li>
 <li>{{domxref("SVGFEComponentTransferElement")}}</li>
 <li>{{domxref("SVGFECompositeElement")}}</li>
 <li>{{domxref("SVGFEConvolveMatrixElement")}}</li>
 <li>{{domxref("SVGFEDiffuseLightingElement")}}</li>
 <li>{{domxref("SVGFEDisplacementMapElement")}}</li>
 <li>{{domxref("SVGFEDistantLightElement")}}</li>
 <li>{{domxref("SVGFEFloodElement")}}</li>
 <li>{{domxref("SVGFEGaussianBlurElement")}}</li>
 <li>{{domxref("SVGFEImageElement")}}</li>
 <li>{{domxref("SVGFEMergeElement")}}</li>
 <li>{{domxref("SVGFEMergeNodeElement")}}</li>
 <li>{{domxref("SVGFEMorphologyElement")}}</li>
 <li>{{domxref("SVGFEOffsetElement")}}</li>
 <li>{{domxref("SVGFEPointLightElement")}}</li>
 <li>{{domxref("SVGFESpecularLightingElement")}}</li>
 <li>{{domxref("SVGFESpotLightElement")}}</li>
 <li>{{domxref("SVGFETileElement")}}</li>
 <li>{{domxref("SVGFETurbulenceElement")}}</li>
 <li>{{domxref("SVGFEFuncRElement")}}</li>
 <li>{{domxref("SVGFEFuncGElement")}}</li>
 <li>{{domxref("SVGFEFuncBElement")}}</li>
 <li>{{domxref("SVGFEFuncAElement")}}</li>
 <li>{{domxref("SVGFilterElement")}}</li>
 <li>{{domxref("SVGFilterPrimitiveStandardAttributes")}}</li>
 <li>{{domxref("SVGFontElement")}}</li>
 <li>{{domxref("SVGFontFaceElement")}}</li>
 <li>{{domxref("SVGFontFaceFormatElement")}}</li>
 <li>{{domxref("SVGFontFaceNameElement")}}</li>
 <li>{{domxref("SVGFontFaceSrcElement")}}</li>
 <li>{{domxref("SVGFontFaceUriElement")}}</li>
 <li>{{domxref("SVGForeignObjectElement")}}</li>
 <li>{{domxref("SVGGElement")}}</li>
 <li>{{domxref("SVGGlyphElement")}}</li>
 <li>{{domxref("SVGGlyphRefElement")}}</li>
 <li>{{domxref("SVGGradientElement")}}</li>
 <li>{{domxref("SVGHKernElement")}}</li>
 <li>{{domxref("SVGImageElement")}}</li>
 <li>{{domxref("SVGLinearGradientElement")}}</li>
 <li>{{domxref("SVGLineElement")}}</li>
 <li>{{domxref("SVGMarkerElement")}}</li>
 <li>{{domxref("SVGMaskElement")}}</li>
 <li>{{domxref("SVGMetadataElement")}}</li>
 <li>{{domxref("SVGMissingGlyphElement")}}</li>
 <li>{{domxref("SVGMPathElement")}}</li>
 <li>{{domxref("SVGPathElement")}}</li>
 <li>{{domxref("SVGPatternElement")}}</li>
 <li>{{domxref("SVGPolylineElement")}}</li>
 <li>{{domxref("SVGPolygonElement")}}</li>
 <li>{{domxref("SVGRadialGradientElement")}}</li>
 <li>{{domxref("SVGRectElement")}}</li>
 <li>{{domxref("SVGScriptElement")}}</li>
 <li>{{domxref("SVGSetElement")}}</li>
 <li>{{domxref("SVGStopElement")}}</li>
 <li>{{domxref("SVGStyleElement")}}</li>
 <li>{{domxref("SVGSVGElement")}}</li>
 <li>{{domxref("SVGSwitchElement")}}</li>
 <li>{{domxref("SVGSymbolElement")}}</li>
 <li>{{domxref("SVGTextElement")}}</li>
 <li>{{domxref("SVGTextPathElement")}}</li>
 <li>{{domxref("SVGTitleElement")}}</li>
 <li>{{domxref("SVGTRefElement")}}</li>
 <li>{{domxref("SVGTSpanElement")}}</li>
 <li>{{domxref("SVGUseElement")}}</li>
 <li>{{domxref("SVGViewElement")}}</li>
 <li>{{domxref("SVGVKernElement")}}</li>
</ul>
</div>

<h3 id="SVG_data_type_interfaces">SVG data type interfaces</h3>

<p>Here are the DOM API for data types used in the definitions of SVG properties and attributes.</p>

<div class="note">
<p><strong>Note:</strong> Starting in {{Gecko("5.0")}}, the following SVG-related DOM interfaces representing lists of objects are now indexable and can be accessed ; in addition, they have a length property indicating the number of items in the lists: {{domxref("SVGLengthList")}}, {{domxref("SVGNumberList")}}, {{domxref("SVGPathSegList")}}, and {{domxref("SVGPointList")}}.</p>
</div>

<h4 id="Static_type">Static type</h4>

<div class="index">
<ul>
 <li>{{domxref("SVGAngle")}}</li>
 <li>{{domxref("SVGColor")}}</li>
 <li>{{domxref("SVGICCColor")}}</li>
 <li>{{domxref("SVGElementInstance")}}</li>
 <li>{{domxref("SVGElementInstanceList")}}</li>
 <li>{{domxref("SVGLength")}}</li>
 <li>{{domxref("SVGLengthList")}}</li>
 <li>{{domxref("SVGMatrix")}}</li>
 <li>{{domxref("SVGNumber")}}</li>
 <li>{{domxref("SVGNumberList")}}</li>
 <li>{{domxref("SVGPaint")}}</li>
 <li>{{domxref("SVGPoint")}}</li>
 <li>{{domxref("SVGPointList")}}</li>
 <li>{{domxref("SVGPreserveAspectRatio")}}</li>
 <li>{{domxref("SVGRect")}}</li>
 <li>{{domxref("SVGStringList")}}</li>
 <li>{{domxref("SVGTransform")}}</li>
 <li>{{domxref("SVGTransformList")}}</li>
</ul>
</div>

<h4 id="Animated_type">Animated type</h4>

<div class="index">
<ul>
 <li>{{domxref("SVGAnimatedAngle")}}</li>
 <li>{{domxref("SVGAnimatedBoolean")}}</li>
 <li>{{domxref("SVGAnimatedEnumeration")}}</li>
 <li>{{domxref("SVGAnimatedInteger")}}</li>
 <li>{{domxref("SVGAnimatedLength")}}</li>
 <li>{{domxref("SVGAnimatedLengthList")}}</li>
 <li>{{domxref("SVGAnimatedNumber")}}</li>
 <li>{{domxref("SVGAnimatedNumberList")}}</li>
 <li>{{domxref("SVGAnimatedPreserveAspectRatio")}}</li>
 <li>{{domxref("SVGAnimatedRect")}}</li>
 <li>{{domxref("SVGAnimatedString")}}</li>
 <li>{{domxref("SVGAnimatedTransformList")}}</li>
</ul>
</div>

<h3 id="SMIL_related_interfaces">SMIL related interfaces</h3>

<div class="index">
<ul>
 <li>{{domxref("ElementTimeControl")}}</li>
 <li>{{domxref("TimeEvent")}}</li>
</ul>
</div>

<h3 id="Other_SVG_interfaces">Other SVG interfaces</h3>

<div class="index">
<ul>
 <li>{{domxref("SVGAnimatedPathData")}}</li>
 <li>{{domxref("SVGAnimatedPoints")}}</li>
 <li>{{domxref("SVGColorProfileRule")}}</li>
 <li>{{domxref("SVGCSSRule")}}</li>
 <li>{{domxref("SVGExternalResourcesRequired")}}</li>
 <li>{{domxref("SVGFitToViewBox")}}</li>
 <li>{{domxref("SVGLangSpace")}}</li>
 <li>{{domxref("SVGLocatable")}}</li>
 <li>{{domxref("SVGRenderingIntent")}}</li>
 <li>{{domxref("SVGStylable")}}</li>
 <li>{{domxref("SVGTests")}}</li>
 <li>{{domxref("SVGTextContentElement")}}</li>
 <li>{{domxref("SVGTextPositioningElement")}}</li>
 <li>{{domxref("SVGTransformable")}}</li>
 <li>{{domxref("SVGUnitTypes")}}</li>
 <li>{{domxref("SVGURIReference")}}</li>
 <li>{{domxref("SVGViewSpec")}}</li>
 <li>{{domxref("SVGZoomAndPan")}}</li>
</ul>
</div>

<h2 id="See_also" name="See_also">See also</h2>

<ul>
 <li><a href="/en-US/docs/DOM/DOM_Reference/Examples">DOM Examples</a></li>
</ul>
Revert to this revision