<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 <script>
SVG element allows to add scripts to an SVG document.
Example
html
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