<script>

Baseline 廣泛可用 *

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

* 此特性的某些部分可能存在不同級別的支援。

<script> SVG 元素允許向 SVG 文件新增指令碼。

注意:雖然 SVG 的 script 元素等同於 HTML 的 <script> 元素,但它有一些差異,例如它使用 href 屬性而不是 src,並且到目前為止不支援 ECMAScript 模組(有關詳細資訊,請參閱下面的瀏覽器相容性)。

使用語境

分類None
允許內容任何元素或字元資料

屬性

crossorigin

此屬性定義了為 HTML <script> 元素定義的 CORS 設定值型別[ anonymous | use-credentials ]?預設值?可動畫

fetchpriority 實驗性 非標準

提供在獲取外部指令碼時使用的相對優先順序的提示。允許的值

high

以相對於其他外部指令碼的高優先順序獲取外部指令碼。

low

以相對於其他外部指令碼的低優先順序獲取外部指令碼。

auto

不設定獲取優先順序的偏好。如果未設定值或設定了無效值,則使用此項。這是預設值。

href

要載入的指令碼的 URL值型別<URL>預設值可動畫

type

此屬性定義要使用的指令碼語言的型別。值型別<media-type>預設值application/ecmascript可動畫

xlink:href 已棄用

要載入的指令碼的 URL值型別<URL>預設值可動畫

DOM 介面

此元素實現了 SVGScriptElement 介面。

示例

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>

規範

規範
Scalable Vector Graphics (SVG) 2
# ScriptElement

瀏覽器相容性

另見