我写了(两段 800ms+500ms 的关键帧),但一启动就跳到中间:
// 总时长 1300ms,我用负 delay
this.uiContext?.keyframeAnimateTo({ delay: -600, iterations: 1 }, [
{ duration: 800, event: () => this.scale = 1.5 },
{ duration: 500, event: () => this.scale = 1.0 },
])
一开始就像是“seek”到了 600ms 的位置,这是正常的吗?
据我所知,delay < 0 会把时间线前移:
若 |delay| < 实际动画总时长,首帧会直接定位在该时间点对应的状态;
若 |delay| >= 实际动画总时长,首帧直接到终点状态。
这可用于“从中间开始”。示例: