.reverse()

.reverse( from:*, suppressEvents:Boolean ) : *
控制动画反向播放。动画的各种表现都会反转,例如ease。

//当前位置反向播放
 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();
}
返回self,方便链式设调用。
.reverse()适用于TimelineMaxTimelineLite

.reverse()的参数

参数名 类型 必填 说明
from Num/label 动画反向播放前跳转到的时间(或TimelineLite/TimelineMax的label)如果没有定义,它将从播放头当前的位置开始反向播放。如果从最动画最末端开始播放,设置为0。如果时间基于反方向,可以设置为负数,如.reverse(-1)
suppressEvents Boolean 如果true(默认值),当播放头移动到from参数中定义的新位置时,不会触发任何事件或回调。

.reverse()效果展示

  • HTML
  • CSS
  • JS
  • 展示

#demo {
	width: 692px;
	height: 60px;
        background-color: #333;
	padding: 8px;
	margin-bottom: 10px;
}
.box {
	width: 50px;
	height: 50px;
	border-radius: 6px;
	margin-top: 4px;
	display: inline-block;
	position: absolute;
}
.green {
	background-color: #6fb936;
}
input[type="button"] {
	-webkit-appearance: button;
	padding: 8px;
	margin-right: 5px;
	margin-bottom: 5px;
}
var tm = new TimelineMax();
tm.to('.box', 6, {x: 500});

playBtn = document.getElementById("playBtn");
pauseBtn = document.getElementById("pauseBtn");
resumeBtn = document.getElementById("resumeBtn");
reverseBtn = document.getElementById("reverseBtn");
playFromBtn = document.getElementById("playFromBtn");
reverseFromBtn = document.getElementById("reverseFromBtn");
seekBtn = document.getElementById("seekBtn");
timeScaleSlowBtn = document.getElementById("timeScaleSlowBtn");
timeScaleNormalBtn = document.getElementById("timeScaleNormalBtn");
timeScaleFastBtn = document.getElementById("timeScaleFastBtn");
restartBtn = document.getElementById("restartBtn");

playBtn.onclick = function() {
    //当前位置播放动画,如果动画播放完成, play() 无效
    tm.play();
}
pauseBtn.onclick = function() {
    tm.pause();
}
resumeBtn.onclick = function() {
    //当前位置继续动画.
    tm.resume();
}
reverseBtn.onclick = function() {
    tm.reverse();
}
playFromBtn.onclick = function() {
    //某时间点开始播放(秒).
    tm.play(5);
}
reverseFromBtn.onclick = function() {
    //某时间点开始返回 (秒).
    tm.reverse(1);
}
seekBtn.onclick = function() {
    //跳到特定时间 (秒)
    tm.seek(3);
}
timeScaleSlowBtn.onclick = function() {
    //减速.
    tm.timeScale(0.5);
}
timeScaleNormalBtn.onclick = function() {
    //恢复速度.
    tm.timeScale(1);
}
timeScaleFastBtn.onclick = function() {
    //加速.
    tm.timeScale(2);
}
restartBtn.onclick = function() {
    //重新开始.
    tm.restart();
}
重播

转载原创文章请注明:文章转载自:TweenMax中文网 [https://www.tweenmax.com.cn]
本文地址:https://www.tweenmax.com.cn/api/timelinemax/reverse()