.seek()
优质
小牛编辑
124浏览
2023-12-01
.seek( position:*, suppressEvents:Boolean ) : *
不改变状态(播放、暂停、方向)的情况下直接跳转到某个时间点。
//跳转到第2秒
myAnimation.seek(2);
//跳转到第2秒,并且不阻止期间的函数、事件
myAnimation.seek(2, false);
必须设定时间点 返回self,方便链式调用。
.seek()适用于TimelineMaxTimelineLite
.seek()的参数
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
time | Num/label | 是 | 跳转到的时间秒数(或TimelineLite/TimelineMax的label) |
suppressEvents | Boolean | 否 | 如果true(默认值),当播放头移动到time参数中定义的新位置时,不会触发任何事件或回调。 |
.seek() 示例
#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();
}