This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

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


var animation = new Animation([effect][, timeline]);


effect Optional
The target effect, as an object based on the AnimationEffectReadOnly 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 my 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:

var rabbitDownAnimation = new Animation(rabbitDownKeyframes, document.timeline);


Specification Status Comment
Web Animations
The definition of 'Animation()' in that specification.
Working Draft Editor's draft.

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support61 ?


46 — 481

No ? No
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support6161 ?


46 — 481

? No No

1. From version 46 until version 48 (exclusive): this feature is behind the dom.animations-api.core.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.

See also

Document Tags and Contributors

Last updated by: fscholz,