[Js]运动

一、运动框架

1.在开始运动时,关闭已有定时器(否则会不断有新的定时器执行)

2.把运动和停止隔开(if/else)

二、缓冲运动

逐渐变慢,最后停止(距离越远速度越大)

速度=(目标值-当前值)/缩放系数

例如 var iSpeed=(iTarget-oDiv.offsetLeft)/8;

但由于除法可能产生小数,位置加上一个小数还是会被舍弃(如300.25px其实还是会被计算机当成300px),所以小数要给它向上取整,当然也有可能是负的小数,那就要向下取整

iSpeed=iSpeed>0?Math.ceil(iSpeed):Math.floor(iSpeed);

潜在问题:目标值有时候也是计算出来可能是小数,也要给它取整parseInt(iTarget)

三、匀速运动的停止条件

距离足够近

if(Math.abs(oDiv.offsetLeft-iTarget)<iSpeed){           //不管往左还是往右,取绝对值

    oDiv.style.left=iTarget+‘px‘;

}

[Js]运动,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。