本文的内容大致与官网文档内容相似,作者只是想自己学习记录一下学习过程,加深印象,叙述方式会尽可能地口头话一点,想看官方文档的可以点击此处 GSAP官方文档 ,本文将接着上面的章节继续书写,完整的教程可以访问我的个人主页
play()
.play( from: *, suppressEvents:Boolean )
控制动画往正方向播放,可设定开始的时间点。
如果 suppressEvents
保持默认状态并跳到新的时间点,那么之前在新旧时间点之间设置的回调或函数不会被触发,相当于跳过了那些时间点。如果想触发,设为false。
//在当前位置开始播放
myAnimation.play();
//在2秒钟位置开始播放
myAnimation.play(2);
//在2秒钟位置开始播放,并且不阻止期间的函数、事件
myAnimation.play(2, false);
pause()
pause( atTime: *, suppressEvents:Boolean )
暂停动画,可选择跳转到特定时间。
如果 suppressEvents
保持默认状态并跳到新的时间点,那么之前在新旧时间点之间设置的回调或函数不会被触发,相当于跳过了那些时间点。如果想触发,设为false。
//暂停动画
myAnimation.pause();
//跳转到第2秒并暂停动画
myAnimation.pause(2);
//跳转到第2秒并暂停动画,并且不抑制事件和函数触发
myAnimation.pause(2, false);
paused()
paused( value:Boolean )
获取或设置动画的暂停状态,该状态指示动画当前是否已暂停。
var paused = myAnimation.paused(); //获取暂停状态
myAnimation.paused( true ); //设置暂停状态(类似pause())
myAnimation.paused( !myAnimation.paused() ); //切换暂停/非暂停状态
restart()
restart( includeDelay:Boolean, suppressEvents:Boolean )
重新开始动画/重头开始。
-
includeDelay
设置重新开始动画时是否包含延迟(如果有),例如动画 new TweenLite(mc, 2, {x:100, delay:1});当你restart(),他会略过delay马上开始。如果是restart(true),则会有1秒的延迟。默认false。
-
suppressEvents
如果true(默认值),当播放头移动到新位置时,不会触发任何事件或回调。
resume()
resume( from:*, suppressEvents:Boolean )
恢复播放而不改变方向(前进或后退),可选择首先跳到特定时间
与 play()
的区别就是它可以后退
//恢复播放
myAnimation.resume();
//跳到第2秒并恢复播放
myAnimation.resume(2);
//跳到第2秒并恢复播放,并且不抑制事件触发
myAnimation.resume(2, false);
reverse()
reverse( from:*, suppressEvents:Boolean )
控制动画反向播放。动画的各种表现都会反转,例如ease
-
from
动画反向播放前跳转到的时间(或TimelineLite/TimelineMax的label)如果没有定义,它将从播放头当前的位置开始反向播放。如果从最动画最末端开始播放,设置为0。如果时间基于反方向,可以设置为负数,如.reverse(-1)
//当前位置反向播放
myAnimation.reverse();
//2秒位置反向播放
myAnimation.reverse(2);
//2秒位置反向播放,不抑制事件触发
myAnimation.reverse(2, false);
//动画末端反向播放
myAnimation.reverse(0);
//动画末端往回1秒位置反向播放
myAnimation.reverse(-1);
//切换方向(如果它是前进方向,则反向播放。如果是反向的,则会向前播放)
if (myAnimation.reversed()) {
myAnimation.play();
} else {
myAnimation.reverse();
}
reversed()
reversed( value:Boolean )
获取或设置动画的反转状态,指示是否应该反向播放动画
var rev = myAnimation.reversed(); //获取反方向状态
myAnimation.reversed( true ); //设置反方向
myAnimation.reversed( !myAnimation.reversed() ); //切换方向
seek()
seek( time:*, suppressEvents:Boolean )
不改变状态(播放、暂停、方向)的情况下直接跳转到某个时间点
//跳转到第2秒
myAnimation.seek(2);
//跳转到第2秒,并且不阻止期间的函数、事件
myAnimation.seek(2, false);
timeScale()
timeScale( value:Number )
获取/设定动画速度,默认为1。
例如0.5为慢速,2为快速。
如果设置则返回此动画实例便于链式调用。如不设置则返回时间调节比例。
网友评论