This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
Web Animations API's EffectTiming
dictionary's iterationStart
property specifies the repetition number which repetition the animation begins at and its progress through it.
Element.animate()
, KeyframeEffectReadOnly.KeyframeEffectReadOnly()
, and KeyframeEffect.KeyframeEffect()
all accept an object of timing properties including iterationStart.
The value of iterationStart
corresponds directly to AnimationEffectTimingReadOnly.iterationStart
in timing
objects returned by AnimationEffectReadOnly
, KeyframeEffectReadOnly
, and KeyframeEffect
.
Syntax
var timingProperties = { iterationStart = iterationNumber }; timingProperties.iterationStart = iterationNumber;
Value
A floating-point value whose value is at least 0 and is not +Infinity
, indicating the offset into the number of iterations the animation sequence is to run at which to start animating. iterationStart
represents the iteration index at which the animation effect begins as well as its progress through that iteration.
Usually you'll use a value between 0.0 and 1.0 to indicate an offset into the first run of the animation at which to begin the animation performance, but any positive, non-infinite value is allowed. Since all animations' iteration indexes start at 0, a value of 0.5 would start the animation halfway through its first iteration or loop. Meanwhile, a value of 1.2 means the animation will begin playback 20% of the way through its second iteration, and so forth.
It's currently undefined what happens if you specify a value of iterationStart
which is greater than the value of AnimationEffectTimingProperties.iterations
. See issue 170 in the Web Animations API specification's issue tracker for details and status of any changes to the specification in this regard.
Specifications
Specification | Status | Comment |
---|---|---|
Web Animations The definition of 'iterationStart' in that specification. |
Working Draft | Editor's draft. |
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
iterationStart | Chrome Full support 52 | Edge Full support ≤79 | Firefox Full support 63 | IE No support No | Opera Full support Yes | Safari No support No | WebView Android Full support 52 | Chrome Android Full support 52 | Firefox Android Full support 63 | Opera Android No support No | Safari iOS No support No | Samsung Internet Android Full support Yes |
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.
See also
- Web Animations API
Element.animate()
,KeyframeEffectReadOnly()
, andKeyframeEffect()
all accept an object of timing properties including this one.- The value of this property corresponds to
AnimationEffectReadOnly.timing
,KeyframeEffectReadOnly.timing
, andKeyframeEffect.timing
).