为了账号安全,请及时绑定邮箱和手机立即绑定

为什么speed大于0向上取整,小于0向下取整?

为什么speed大于0向上取整,小于0向下取整?

正在回答

2 回答

var speed=(iTarget-mybox.offsetLeft)/20;这里的速度值表示,当你的目标值大于当前的宽度,speed大于0表示你向右走,要“+“正speed加一个宽度.如果speed小于0,你要向左走,你的宽度需要越来越小,所以speed需要"-"只有向下取整。不知道有没有描述清楚。

0 回复 有任何疑惑可以回复我~

当speed负值时=-0.9、-0.8、-0.7...时,向上取整时speed值=0,此后的速度一直为0,所以要向下取整-0.9、-0.8...向下取整等于-1;同理当speed为正值时0.9、0.8、0.7...向上取=1,向下取=0;

至于为什么要取整,是因为offsetWidth等像素值最小单元为1px,有小数存在时会四舍五入,当接近目标值时speed值很小,此时当增加的speed后的offsetWidth小数位<0.5时就永远地进不了位(如196.4四舍五入为196);

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么speed大于0向上取整,小于0向下取整?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信