问答详情
源自:2-1 JS速度动画

哪里不对啊,离开缩不回去了好奇怪

window.onload=function(){
                 odiv=document.getElementById("div1");
                 odiv.onmouseover=function(){
                     //move(10,0);
                     move(0);
                 }
                 odiv.onmouseout=function(){
                     //out();
                     //move(-10,-200);
                     move(-200);
                 }
             }
             var timer=null;
             function move(target){
                 clearInterval(timer);
                 odiv=document.getElementById("div1");
                 timer = setInterval(function(){
                     var speed=0;
                     if(odiv.offsetLeft>target){
                         speed = -10;
                     }else{
                         speed=10;
                     }
                     if(odiv.offsetLeft>=target){
                         clearInterval(timer);
                     }else{
                         odiv.style.left =odiv.offsetLeft + speed+"px"; //变大
                     }
                     
                 },500);
             }
            

提问者:慕仙5237505 2017-10-31 21:29

个回答

  • 德川家康
    2017-11-01 21:52:52
    已采纳

    当div完全显示的时候,odiv.offsetleft为0,想让它缩回去,你设target为-200,然而你判断条件是odiv.offsetLeft>=target,条件成立,执行  clearInterval(timer);,自然缩不回去。