设计 Timeline 时间轴来更精确地控制动画
Firefox 偷偷实现了一个 AnimationTimeline,用来为动画提供时间轴。根据文档,它是一个抽象类,被 DocumentTimeline 继承。
由于是非标准的特性,MDN的文档里面也没有解释的很清楚,只是说它用来让多个动画共享时间轴,但是具体该怎么用,并没有详细的说明。
今天在这篇文章里,我并不想解释 Firefox 实现的这个 Timeline 该怎么用,而是借着这个 Timeline 的概念进行一些扩展,实现了一个全新的 Timeline 库。让我们看看如果为动画或者其他依赖于时间的行为设计一个 Timeline,我们能做什么。