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

The getKeyframes() method of a KeyframeEffectReadOnly or a KeyframeEffect returns an Array of the computed keyframes that make up this animation along with their computed offsets.


var keyframes = keyframeEffect.getKeyframes();



Return value

Returns a sequence of objects with the following format:

property value pairs

As many property value pairs as are contained in each keyframe of the animation.


The offset of the keyframe specified as a number between 0.0 and 1.0 inclusive or null. This is equivalent to specifying start and end states in percentages in CSS stylesheets using @keyframes. This will be null if the keyframe is automatically spaced using KeyframeEffect.spacing.


The computed offset for this keyframe, calculated when the list of computed keyframes was produced according to KeyframeEffect.spacing. Unlike offset, above, the computedOffset is never null.


The timing function used from this keyframe until the next keyframe in the series.


The KeyframeEffectReadOnly.composite operation used to combine the values specified in this keyframe with the underlying value. This will be absent if the composite operation specified on the effect is being used.


In the Red Queen Race example, we can inspect Alice and the RedQueen's animation to see its individual keyframes like so:

// Return the array of keyframes



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

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support No No No No No ?
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support ? No No No No ? ?

See also

Document Tags and Contributors

 Contributors to this page: delete12345, fscholz, birtles, rachelnabors, chrisdavidmills, Sheppy
 Last updated by: delete12345,