Element: getAnimations() メソッド

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2020.

getAnimations()Element インターフェイスのメソッドで(Animatable ミックスインで指定されており)、この要素に影響を与える、あるいは将来的に影響を与える予定のすべての Animation オブジェクトの配列を返します。オプションとして、子孫要素の Animation オブジェクトも返すことができます。

メモ: この配列には CSS アニメーションCSS トランジションウェブアニメーションが含まれます。

構文

js
getAnimations()
getAnimations(options)

引数

options 省略可

以下のプロパティを含むオプションオブジェクトです。

subtree

論理値で、true の場合、 Element の子孫をターゲットとしたアニメーションも返すようになります。これは、 Element やその子孫に付けられた CSS 擬似要素をターゲットとするアニメーションを含みます。既定値は false です。

返値

Animation オブジェクトの配列 (Array) で、それぞれが このメソッドが呼び出された Element、または { subtree: true } が指定されている場合は、その子孫の要素の 1 つを現在ターゲットにしているアニメーションです。

以下のコードでは、 elem とその子孫のすべてのアニメーションが終了するのを待ってから、文書からその要素を削除します。

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

仕様書

Specification
Web Animations
# dom-animatable-getanimations

ブラウザーの互換性

BCD tables only load in the browser

関連情報