其实TAMA酱不是我名字
2016-04-09 22:28
var speed = (itarget-odiv.offsetLeft)/20;
speed = speed>0?Math.ceil(speed):Math.floor(speed);
if(oDiv.offsetLeft ==iTarget){
clearInterval(timer);
}
else{
oDiv.style.left = oDiv.offsetLeft+speed+'px';
}
当(itarget-odiv.offsetLeft)/20=10/20=0.5PX时,oDiv.style.left = oDiv.offsetLeft+speed+'px';=190+0.5=190.5px,像素出现了小数程序无法执行下去。
就是因为那个offsetLeft属性的值是不能带小数的。所以要想办法用Math的方法把speed变成整数,这样才能把offsetLeft弄成整数.
请检查你的样式表里面有没有加border,offsetLift获取的左值+边框的值
JS动画效果
113925 学习 · 1443 问题
相似问题