KeyframeEffect: getKeyframes() 方法
KeyframeEffect 对象的 getKeyframes() 方法返回一个数组,其中包含构成该动画的计算后的关键帧及其计算后的偏移量。
语法
js
getKeyframes()
参数
无。
返回值
返回具有以下格式的对象的序列
- 属性值对
-
动画的每个关键帧中包含的属性值对的数量。
offset-
关键帧的偏移量,指定为
0.0到1.0之间的数字(包含边界),或null。这等同于在 CSS 样式表中使用@keyframes指定开始和结束状态的百分比。如果关键帧是自动间距的,此值将为null。 computedOffset-
此关键帧的计算偏移量,在生成计算后的关键帧列表时计算得出。与上面的
offset不同,computedOffset永远不会是null。 easing-
从该关键帧到系列中下一个关键帧使用的 缓动函数。
composite-
用于将此关键帧中指定的值与底层值组合的
KeyframeEffect.composite操作。如果正在使用在效果上指定的组合操作,则此项将不存在。
示例
在以下示例中,我们可以使用 getKeyframes() 方法检查滚动动画以查看其关键帧。
js
const emoji = document.querySelector("div"); // element to animate
const rollingKeyframes = new KeyframeEffect(
emoji,
[
{ transform: "translateX(0) rotate(0)" }, // keyframe
{ transform: "translateX(200px) rotate(1.3turn)" }, // keyframe
],
{
// keyframe options
duration: 2000,
direction: "alternate",
easing: "ease-in-out",
iterations: "Infinity",
},
);
const rollingAnimation = new Animation(rollingKeyframes, document.timeline);
rollingAnimation.play();
// Array [ {…}, {…} ]
console.log(rollingAnimation.effect.getKeyframes());
html
<div>🤣</div>
规范
| 规范 |
|---|
| Web 动画 # dom-keyframeeffect-getkeyframes |
浏览器兼容性
加载中…
另见
- Web Animations API
KeyframeEffect对象的 方法。