<script>
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
The SVG script
element allows to add scripts to an SVG document.
Example
Click the circle to change colors.
<svg
viewBox="0 0 10 10"
height="120px"
width="120px"
xmlns="http://www.w3.org/2000/svg">
<circle cx="5" cy="5" r="4" />
<script>
// <![CDATA[
function getColor() {
const R = Math.round(Math.random() * 255)
.toString(16)
.padStart(2, "0");
const G = Math.round(Math.random() * 255)
.toString(16)
.padStart(2, "0");
const B = Math.round(Math.random() * 255)
.toString(16)
.padStart(2, "0");
return `#${R}${G}${B}`;
}
document.querySelector("circle").addEventListener("click", (e) => {
e.target.style.fill = getColor();
});
// ]]>
</script>
</svg>
Attributes
crossorigin
-
This attribute defines CORS settings as define for the HTML
<script>
element. Value type: <string>; Default value:?
; Animatable: yes href
-
The URL to the script to load. Value type: <URL> ; Default value: none; Animatable: no
type
-
This attribute defines type of the script language to use. Value type: <string>; Default value:
application/ecmascript
; Animatable: no xlink:href
Deprecated-
The URL to the script to load. Value type: <URL> ; Default value: none; Animatable: no
Usage context
Categories | None |
---|---|
Permitted content | Any elements or character data |
Specifications
Specification |
---|
Scalable Vector Graphics (SVG) 2 # ScriptElement |
Browser compatibility
BCD tables only load in the browser