这是
实验性技术
检查
浏览器兼容性表格
要小心谨慎在生产中使用这之前。
KeyframeEffect
接口在
Web 动画 API
lets us create sets of animatable properties and values, called
keyframes.
These can then be played using the
Animation()
构造函数。
KeyframeEffect()
KeyframeEffect
object instance, and also allows you to clone an existing keyframe effect object instance.
KeyframeEffect.target
null
for animations that do not target a specific element or pseudo-element.
KeyframeEffect.pseudoElement
null
for animations that do not target a pseudo-element.
KeyframeEffect.iterationComposite
Gets and sets the iteration composite operation for resolving the property value changes of this keyframe effect.
KeyframeEffect.composite
Gets and sets the composite operation property for resolving the property value changes between this and other keyframe effects.
This interface inherits some of its methods from its parent,
AnimationEffect
.
AnimationEffect.getComputedTiming()
Returns the calculated, current timing values for this keyframe effect.
KeyframeEffect.getKeyframes()
Returns the computed keyframes that make up this effect along with their computed keyframe offsets.
AnimationEffect.getTiming()
EffectTiming
object associated with the animation containing all the animation's timing values.
KeyframeEffect.setKeyframes()
Replaces the set of keyframes that make up this effect.
AnimationEffect.updateTiming()
Updates the specified timing properties.
在 Follow the White Rabbit example , the KeyframeEffect constructor is used to create a set of keyframes that dictate how the White Rabbit should animate down the hole:
var rabbitDownKeyframes = new KeyframeEffect(
whiteRabbit, // element to animate
[
{ transform: 'translateY(0%)' }, // keyframe
{ transform: 'translateY(100%)' } // keyframe
],
{ duration: 3000, fill: 'forwards' } // keyframe options
);
| 规范 | 状态 | 注释 |
|---|---|---|
|
Web 动画
The definition of 'KeyframeEffect' in that specification. |
工作草案 | 初始定义 |
| 桌面 | 移动 | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
KeyframeEffect
|
Chrome Yes | Edge ≤79 | Firefox 63 | IE No | Opera Yes | Safari No | WebView Android Yes | Chrome Android Yes | Firefox Android 63 | Opera Android Yes | Safari iOS No | Samsung Internet Android Yes |
KeyframeEffect()
构造函数
|
Chrome Yes | Edge ≤79 | Firefox 63 | IE No | Opera No | Safari No | WebView Android Yes | Chrome Android Yes | Firefox Android 63 | Opera Android No | Safari iOS No | Samsung Internet Android Yes |
composite
|
Chrome ? | Edge ? | Firefox 63 | IE No | Opera No | Safari No | WebView Android ? | Chrome Android ? | Firefox Android 63 | Opera Android No | Safari iOS No | Samsung Internet Android ? |
getKeyframes
|
Chrome ? | Edge ? | Firefox 63 | IE No | Opera No | Safari No | WebView Android ? | Chrome Android ? | Firefox Android 63 | Opera Android No | Safari iOS No | Samsung Internet Android ? |
iterationComposite
|
Chrome ? | Edge ? | Firefox 63 | IE No | Opera No | Safari No | WebView Android ? | Chrome Android ? | Firefox Android 63 | Opera Android No | Safari iOS No | Samsung Internet Android ? |
pseudoElement
|
Chrome
81
Disabled
|
Edge
81
Disabled
|
Firefox 75 | IE No |
Opera
68
Disabled
|
Safari No | WebView Android No |
Chrome Android
81
Disabled
|
Firefox Android No | Opera Android No | Safari iOS No | Samsung Internet Android No |
setKeyframes
|
Chrome No | Edge No | Firefox 63 | IE No | Opera No | Safari No | WebView Android No | Chrome Android No | Firefox Android 63 | Opera Android No | Safari iOS No | Samsung Internet Android No |
target
|
Chrome ? | Edge ? | Firefox 63 | IE No | Opera No | Safari No | WebView Android ? | Chrome Android ? | Firefox Android 63 | Opera Android No | Safari iOS No | Samsung Internet Android ? |
完整支持
不支持
兼容性未知
实验。期望将来行为有所改变。
用户必须明确启用此特征。