Element:getAnimations() 方法

Baseline 已廣泛支援

此特性已經十分成熟,可在許多裝置和瀏覽器版本上使用。自 2020 年 7 月以來,它已在各大瀏覽器中可用。

Element 介面(在 Animatable 混入(mixin)中指定)的 getAnimations() 方法返回一個包含所有影響此元素或計劃將來影響此元素的 Animation 物件的陣列。它還可以選擇性地返回後代元素的 Animation 物件。

注意: 此陣列包括 CSS 動畫CSS 過渡Web Animations API

語法

js
getAnimations()
getAnimations(options)

引數

options 可選

一個包含以下屬性的選項物件

subtree

一個布林值,如果為 true,則還會返回針對 Element 的後代元素的動畫。這包括針對附加到 Element 或其後代元素的任何 CSS 偽元素 的動畫。預設為 false

返回值

一個 Array,其中包含 Animation 物件,每個物件代表當前正在針對呼叫此方法的 Element,或者如果指定了 { subtree: true },則代表其後代元素之一的動畫。

示例

以下程式碼片段將在 elem 及其後代的所有動畫完成後等待,然後再將該元素從文件中移除。

js
Promise.all(
  elem.getAnimations({ subtree: true }).map((animation) => animation.finished),
).then(() => elem.remove());

規範

規範
Web 動畫
# dom-animatable-getanimations

瀏覽器相容性

另見