AnimationEffectTiming

This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the specification changes.

The AnimationEffectTiming interface of the Web Animations API is comprised of timing properties. It is returned by the timing attribute of a KeyframeEffect.

This interface inherits its properties from AnimationEffectTimingReadOnly, but in a non-read only form.

Properties

This interface inherits its properties from its parent, AnimationEffectTimingReadOnly, in a non-read only form.

AnimationEffectTimingReadOnly.delay
The number of milliseconds to delay the start of the animation. Defaults to 0.
AnimationEffectTimingReadOnly.endDelay
The number of milliseconds to delay after the end of an animation. This is primarily of use when sequencing animations based on the end time of another animation. Defaults to 0.
AnimationEffectTimingReadOnly.fill
Dictates whether the animation's effects should be reflected by the element(s) state prior to playing (backwards), retained after the animation has completed playing (forwards), or both. Defaults to none.
AnimationEffectTimingReadOnly.iterationStart
A number representing the which repetition the animation begins at and its progress through it.
AnimationEffectTimingReadOnly.iterations
The number of times the animation should repeat. Defaults to 1, and can also take a value of infinity to make it repeat infinitely.
AnimationEffectTimingReadOnly.duration
The number of milliseconds each iteration of the animation takes to complete. Defaults to 0.
AnimationEffectReadOnly.direction
Whether the animation runs forwards (normal), backwards (reverse), switches direction after each iteration (alternate), or runs backwards and switches direction after each iteration (alternate-reverse). Defaults to normal.
AnimationEffectTimingReadOnly.easing
The rate of the animation's change over time. Accepts the pre-defined values linear, ease, ease-in, ease-out, and ease-in-out, or a custom cubic-bezier value like cubic-bezier(0.42, 0, 0.58, 1). Defaults to linear.

Examples

In the Growing and Shrinking Alice example, we set Alice's animation — aliceChange — at halfway complete by getting the duration of its effect's timing attribute, which returns an AnimationEffectTiming object:

aliceChange.currentTime = aliceChange.effect.timing.duration / 2 ;

Specifications

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

Browser compatibility

Feature Chrome Firefox (Gecko) Microsoft Edge Internet Explorer Opera Safari (WebKit)
Basic support No support 48 (48)[1] ? No support (Yes) No support
Feature Android Android Webview Chrome for Android Firefox Mobile (Gecko) Firefox OS IE Mobile Opera Mobile Safari Mobile
Basic support ? ? ? 48.0 (48)[1] ? No support No support No support

[1] The Web Animations API is only enabled by default in Firefox Developer Edition and Nightly builds. You can enable it in beta and release builds by setting the preference dom.animations-api.core.enabled to true, and can disable it in any Firefox version by setting this preference to false.

See also

Document Tags and Contributors

 Contributors to this page: Sheppy, suzyh, rachelnabors, chrisdavidmills
 Last updated by: Sheppy,