DocumentTimeline

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

The DocumentTimeline interface of the the Web Animations API represents animation timelines, including the default document timeline (accessed via Document.timeline).

Constructor

DocumentTimeline()
Creates a new DocumentTimeline object associated with the active document of the current browsing context.

Properties

This interface inherits its property from its parent, AnimationTimeline.

AnimationTimeline.currentTime
Returns the time value in milliseconds for this timeline or null if it is inactive.

Examples

We could share a single documentTimeline among multiple animations, thus allowing us to manipulate just that group of animations via their shared timeline. This bit of code would start all the cats animating 500 milliseconds into their animations:

const cats = document.querySelectorAll('.sharedTimelineCat');
const sharedTimeline = new DocumentTimeline({ originTime: 500 });

for (const cat of cats) {
  const catKeyframes = new KeyframeEffect(cat, keyframes, timing);
  const catAnimation = new Animation(catKeyframes, sharedTimeline);
  catAnimation.play(); 
}

Specifications

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

Browser compatibility

DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
DocumentTimeline
Experimental
Chrome Full support 54Edge Full support ≤79Firefox Full support 75
Full support 75
Full support 63
Disabled
Disabled From version 63: this feature is behind the dom.animations-api.timelines.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
No support 50 — 63
Disabled
Disabled From version 50 until version 63 (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.
IE No support NoOpera No support NoSafari Full support 13.1WebView Android Full support 54Chrome Android Full support 54Firefox Android Full support 63
Disabled
Full support 63
Disabled
Disabled From version 63: this feature is behind the dom.animations-api.timelines.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
No support 50 — 63
Disabled
Disabled From version 50 until version 63 (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.
Opera Android No support NoSafari iOS Full support 13.4Samsung Internet Android Full support 6.0
DocumentTimeline() constructor
Experimental
Chrome Full support 61Edge Full support 79Firefox Full support 75
Full support 75
Full support 63
Disabled
Disabled From version 63: this feature is behind the dom.animations-api.timelines.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
No support 50 — 63
Disabled
Disabled From version 50 until version 63 (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.
IE No support NoOpera No support NoSafari Full support 13.1WebView Android Full support 61Chrome Android Full support 61Firefox Android Full support 63
Disabled
Full support 63
Disabled
Disabled From version 63: this feature is behind the dom.animations-api.timelines.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.
No support 50 — 63
Disabled
Disabled From version 50 until version 63 (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.
Opera Android No support NoSafari iOS Full support 13.4Samsung Internet Android Full support 8.0

Legend

Full support
Full support
No support
No support
Experimental. Expect behavior to change in the future.
Experimental. Expect behavior to change in the future.
User must explicitly enable this feature.
User must explicitly enable this feature.

See also