6

我在重新初始化 TimelineMax 序列时遇到问题。调整窗口大小时,我需要将所有补间恢复为默认样式并根据新的窗口大小重新初始化它们。有没有一种简单的方法可以有效地破坏时间线并重新开始,而无需手动重置所有 CSS 属性?

4

1 回答 1

11

根据您要实现的目标,我可以建议两种方法。

第一个与您所描述的完全一样:

myTimeline.pause(0, true); //Go back to the start (true is to suppress events)
myTimeline.remove();

这使一切都回到了时间线开始时的状态。您也可以通过调用来删除任何初始化属性.invalidate()

第二种方法,我添加是因为它可能值得考虑......
而不是完全重新启动补间/时间线,为什么不.invalidate()(项目留在原地,只是时间线本身被清除)并使用补间方法.to()而不是.from(),因为当一切都从以前的位置移动到新的位置而不是完全重新启动时,您将获得更好的用户体验。

此外,大多数用户不会调整窗口大小。所以想想如果它成为一个主要的时间消费者是否值得。

API/文档:http ://api.greensock.com/js/

于 2013-01-31T06:50:45.420 回答