All of the SVG DOM interfaces that correspond directly to elements in the SVG language derive from the SVGElement
interface.
<div id="interfaceDiagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 11.666666666666666%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 70" preserveAspectRatio="xMinYMin meet"><a xlink:href="https://developer.mozilla.org/en-US/docs/Web/API/EventTarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#D4DDE4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">EventTarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#D4DDE4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#D4DDE4"/><a xlink:href="https://developer.mozilla.org/en-US/docs/Web/API/Node" target="_top"><rect x="151" y="1" width="75" height="50" fill="#fff" stroke="#D4DDE4" stroke-width="2px" /><text x="188.5" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">Node</text></a><polyline points="226,25 236,20 236,30 226,25" stroke="#D4DDE4" fill="none"/><line x1="236" y1="25" x2="266" y2="25" stroke="#D4DDE4"/><a xlink:href="https://developer.mozilla.org/en-US/docs/Web/API/Element" target="_top"><rect x="266" y="1" width="75" height="50" fill="#fff" stroke="#D4DDE4" stroke-width="2px" /><text x="303.5" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">Element</text></a><polyline points="341,25 351,20 351,30 341,25" stroke="#D4DDE4" fill="none"/><line x1="351" y1="25" x2="381" y2="25" stroke="#D4DDE4"/><a xlink:href="https://developer.mozilla.org/en-US/docs/Web/API/SVGElement" target="_top"><rect x="381" y="1" width="100" height="50" fill="#F4F7F8" stroke="#D4DDE4" stroke-width="2px" /><text x="431" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">SVGElement</text></a></svg></div>
a:hover text { fill: #0095DD; pointer-events: all;}
Properties
Also inherits properties from: DocumentAndElementEventHandlers
, Element
, ElementCSSInlineStyle
, GlobalEventHandlers
, HTMLOrForeignElement
, SVGElementInstance
SVGElement.dataset
Read only- A
DOMStringMap
object which provides a list of key/value pairs of named data attributes which correspond to custom data attributes attached to the element. These can also be defined in SVG using attributes of the formdata-*
, where*
is the key name for the pair. This works just like HTML'sHTMLElement.dataset
property and HTML'sdata-*
global attribute. SVGElement.className
' Read only- An
SVGAnimatedString
that reflects the value of theclass
attribute on the given element, or the empty string ifclass
is not present. This attribute is deprecated and may be removed in a future version of this specification. Authors are advised to useElement.classList
instead. SVGElement.ownerSVGElement
Read only- An
SVGSVGElement
referring to the nearest ancestor<svg>
element.null
if the given element is the outermost<svg>
element. SVGElement.viewportElement
Read only- The
SVGElement
, which established the current viewport. Often, the nearest ancestor<svg>
element.null
if the given element is the outermost<svg>
element.
Methods
This interface has no methods, but inherits methods from: DocumentAndElementEventHandlers
, Element
, ElementCSSInlineStyle
, GlobalEventHandlers
, HTMLOrForeignElement
, SVGElementInstance
Events
Listen to these events using addEventListener()
or by assigning an event listener to the equivalent on...
handler property defined on GlobalEventHandlers
or WindowEventHandlers
.
abort
- Fired when page loading is stopped before an SVG element has been allowed to load completely. Also available via the
onabort
property. error
- Fired when an SVG element does not load properly or when an error occurs during script execution. Also available via the
onerror
property. load
- Fires on an
SVGElement
when it is loaded in the browser. Also available via theonload
property. resize
- Fired when an SVG document is being resized. Also available via the
onresize
property. scroll
- Fired when an SVG document view is being shifted along the X and/or Y axes. Also available via the
onscroll
property. unload
- Fired when the DOM implementation removes an SVG document from a window or frame. Also available via the
onunload
property.
Specifications
Specification | Status | Comment |
Scalable Vector Graphics (SVG) 2The definition of 'SVGElement' in that specification. | Candidate Recommendation | Adds the dataset property.
|
Scalable Vector Graphics (SVG) 1.1 (Second Edition)The definition of 'SVGElement' in that specification. | Recommendation | Initial definition |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
SVGElement
|
Chrome
Full support Yes |
Edge
Full support 12 |
Firefox
Full support Yes |
IE
Full support 9 |
Opera
Full support Yes |
Safari
Full support Yes |
WebView Android
Full support Yes |
Chrome Android
Full support Yes |
Firefox Android
Full support Yes |
Opera Android
Full support Yes |
Safari iOS
Full support Yes |
Samsung Internet Android
Full support Yes |
abort event
|
Chrome
? |
Edge
? |
Firefox
? |
IE
? |
Opera
? |
Safari
? |
WebView Android
? |
Chrome Android
? |
Firefox Android
? |
Opera Android
? |
Safari iOS
? |
Samsung Internet Android
? |
dataset
|
Chrome
Full support 55 |
Edge
Full support 17 |
Firefox
Full support 51 |
IE
No support No |
Opera
Full support 41 |
Safari
Full support 10 |
WebView Android
Full support 55 |
Chrome Android
Full support 55 |
Firefox Android
Full support 51 |
Opera Android
Full support 41 |
Safari iOS
Full support 10 |
Samsung Internet Android
Full support 6.0 |
error event
|
Chrome
? |
Edge
? |
Firefox
? |
IE
? |
Opera
? |
Safari
? |
WebView Android
? |
Chrome Android
? |
Firefox Android
? |
Opera Android
? |
Safari iOS
? |
Samsung Internet Android
? |
focus
|
Chrome
Full support Yes |
Edge
Full support ≤79 |
Firefox
Full support 51 |
IE
No support No |
Opera
Full support Yes |
Safari
? |
WebView Android
Full support Yes |
Chrome Android
Full support Yes |
Firefox Android
Full support 51 |
Opera Android
Full support Yes |
Safari iOS
? |
Samsung Internet Android
Full support Yes |
load event
|
Chrome
Full support Yes |
Edge
Full support ≤79 |
Firefox Full support Yes Full support Yes Alternate Name' Uses the non-standard name: |
IE
? |
Opera
? |
Safari
? |
WebView Android
Full support Yes |
Chrome Android
Full support Yes |
Firefox Android Full support Yes Full support Yes Alternate Name' Uses the non-standard name: |
Opera Android
? |
Safari iOS
? |
Samsung Internet Android
Full support Yes |
|
Chrome
No support ? — 50 |
Edge
No support No |
Firefox
No support No |
IE
No support No |
Opera
No support ? — 37 |
Safari
No support No |
WebView Android
No support ? — 50 |
Chrome Android
No support ? — 50 |
Firefox Android
No support No |
Opera Android
No support ? — 37 |
Safari iOS
No support No |
Samsung Internet Android
No support ? — 5.0 |
|
Chrome
No support ? — 50 |
Edge
No support No |
Firefox
No support No |
IE
No support No |
Opera
No support ? — 37 |
Safari
No support No |
WebView Android
No support ? — 50 |
Chrome Android
No support ? — 50 |
Firefox Android
No support No |
Opera Android
No support ? — 37 |
Safari iOS
No support No |
Samsung Internet Android
No support ? — 5.0 |
|
Chrome
No support ? — 50 |
Edge
No support No |
Firefox
No support No |
IE
No support No |
Opera
No support ? — 37 |
Safari
No support No |
WebView Android
No support ? — 50 |
Chrome Android
No support ? — 50 |
Firefox Android
No support No |
Opera Android
No support ? — 37 |
Safari iOS
No support No |
Samsung Internet Android
No support ? — 5.0 |
|
Chrome
No support ? — 50 |
Edge
No support No |
Firefox
No support No |
IE
No support No |
Opera
No support ? — 37 |
Safari
No support No |
WebView Android
No support ? — 50 |
Chrome Android
No support ? — 50 |
Firefox Android
No support No |
Opera Android
No support ? — 37 |
Safari iOS
No support No |
Samsung Internet Android
No support ? — 5.0 |
|
Chrome
No support ? — 50 |
Edge
No support No |
Firefox
No support No |
IE
No support No |
Opera
No support ? — 37 |
Safari
No support No |
WebView Android
No support ? — 50 |
Chrome Android
No support ? — 50 |
Firefox Android
No support No |
Opera Android
No support ? — 37 |
Safari iOS
No support No |
Samsung Internet Android
No support ? — 5.0 |
resize event
|
Chrome
Full support Yes |
Edge
Full support ≤79 |
Firefox
Full support Yes |
IE
? |
Opera
? |
Safari
? |
WebView Android
Full support Yes |
Chrome Android
Full support Yes |
Firefox Android
Full support Yes |
Opera Android
? |
Safari iOS
? |
Samsung Internet Android
Full support Yes |
scroll event
|
Chrome
? |
Edge
? |
Firefox
? |
IE
? |
Opera
? |
Safari
? |
WebView Android
? |
Chrome Android
? |
Firefox Android
? |
Opera Android
? |
Safari iOS
? |
Samsung Internet Android
? |
unload event
|
Chrome
? |
Edge
? |
Firefox
? |
IE
? |
Opera
? |
Safari
? |
WebView Android
? |
Chrome Android
? |
Firefox Android
? |
Opera Android
? |
Safari iOS
? |
Samsung Internet Android
? |
Legend
- Full support
- Full support
- No support
- No support
- Compatibility unknown
- Compatibility unknown
- Non-standard. Expect poor cross-browser support.'
- Non-standard. Expect poor cross-browser support.
- Deprecated. Not for use in new websites.'
- Deprecated. Not for use in new websites.
- Uses a non-standard name.'
- Uses a non-standard name.
See also
- HTML
data-*
attribute - SVG
data-*
attribute - Using custom data attributes in HTML
SVGElement by Mozilla Contributors is licensed under CC-BY-SA 2.5.