<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>tweenDemo-01</title>
<style type="text/css">
* { margin: 0; padding: 0;}
div { height: 100px; 100px; position: absolute; left:0; background-color: #ccc;}
</style>
</head>
<body>
<div id="box"></div>
</body>
<script type="text/javascript" src="tween.js"></script> <!-- 引入tween -->
<script type="text/javascript">
var box = document.getElementById('box');
var timer = null;
var t=0,
b=50,
c=100,
d=100;
function Run(){
box.style.left = Tween.Quad.easeOut(t, b, c, d) + "px";
if( t < d ){
t++;
setTimeout(Run, 10);
}
}
Run();
//box要向右缓动,left初始值是50,那么b就是50,要向右移动100,那c就是100,如果知道的是目标值,例如要向右移动到150,那就把目标值150减初始值b就是变化量c了。
//d的设置比较灵活,只要符合t是从0向d递增(或递减)就可以了。d跟步长配合使用来设置持续时间,例如d设置为100,如果设置步长是1,那么从0到100就有100步,即分100次来完成这个过程,步数越多持续时间就越长。
//t的变化相当于时间的变化,一般是均匀变化的,每次变化都增加一个步长,当t从0递增(或递减)到d时,缓动就结束了。
//要注意的是t是从0开始的,设置步长时必须确定t确实能到达d,如果上面的步长是3,那么t就永远都到不了d。更好的处理是当t等于或超过d之后,就停止定时器并设置当前值为目标值。
</script>
</html>