Javascript实现不同运动效果,最重要的一点,是对speed的处理,当然记还要记得加setTimeout()或setInterval();
以下为速度公式
1.匀速运动
oDiv.style.left=oDiv.offsetLeft+speed+"px"; //speed固定
2.缓冲运动
var speed=(target-oDiv.offsetLeft)/50; //速度跟跟两个物体之间的距离成正比
oDiv.style.left=oDiv.offsetLeft+speed+"px";
3.左右弹性运动
var speed+=(target-offsetLeft)/50;
oDiv.style.left=oDiv.offsetLeft+speed+"px";
4.有摩擦左右弹性运动
var speed+=(target-offsetLeft)/50;
speed*=0.96
oDiv.style.left=oDiv.offsetLeft+speed+"px";
5.图片或文字滚动
第一种可以用scroll进行
第二种可以用offset进行
滚动停顿的原理:
可以整除,删除外部setInterval,接着再设置setTimeout多少时间后,重新开启外部setInterval