问答详情
源自:4-4 任意属性值(二)

if(aa==iTarget){ //为什么这里用aa>=iTarget或是<=实现不了呢

unction startMove(obj,arrt,iTarget){

clearInterval(obj.timer);//清除定时器

obj.timer=setInterval(function(){

var aa=parseInt(getStyle(obj,arrt)); //把字符串转成整数

  var speed=(iTarget-aa)/8;  //目标值减去当前的值

      speed=speed>0?Math.ceil(speed):Math.floor(speed); //当速度大于0时向上取整,否则向下取整

if(aa==iTarget){      //为什么这里用aa>=iTarget或是<=实现不了呢

clearInterval(obj.timer);

}else{

obj.style[arrt]=aa+speed+'px';

}

},30);

}


提问者:new新的开始 2016-11-17 23:18

个回答

  • 疯狂的boy
    2016-11-18 10:55:35
    已采纳

    if(aa==iTarget){      //为什么这里用aa>=iTarget或是<=实现不了呢,这句话意思同下:

    iTarget这个词在viviAN讲师第二章或三章的时候就讲过,speed代表是速度,而iTarget代表目标,

    比如说跑步,小明跑了aa米,iTarget目标定的是200米,吹哨子的体育老师在200米等他,当小明到了200米,老师让他停,如同这句话clearInterval(obj.timer);,相反>=和<=,目标就是200米,你跑203米和19几米,多跑和少跑有什么意义。比赛本来就是200米跑步竞赛。