Animation: Animation() constructor

Baseline 2022

Newly available

Since September 2022, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

The Animation() constructor of the Web Animations API returns a new Animation object instance.


new Animation()
new Animation(effect)
new Animation(effect, timeline)


effect Optional

The target effect, as an object based on the AnimationEffect interface, to assign to the animation. Although in the future other effects such as SequenceEffects or GroupEffects might be possible, the only kind of effect currently available is KeyframeEffect. This can be null (which is the default) to indicate that there should be no effect applied.

timeline Optional

Specifies the timeline with which to associate the animation, as an object of a type based on the AnimationTimeline interface. Currently the only timeline type available is DocumentTimeline, but in the future there may be timelines associated with gestures or scrolling, for example. The default value is Document.timeline, but this can be set to null as well.


In the Follow the White Rabbit example, the Animation() constructor is used to create an Animation for the rabbitDownKeyframes using the document's timeline:

const rabbitDownAnimation = new Animation(


Web Animations
# dom-animation-animation

Browser compatibility

BCD tables only load in the browser

See also