问答详情
源自:3-1 JS缓冲动画

各位老师同学,帮我看看我的代码哪里出了问题可以吗,鼠标移入有反应,鼠标移出没反应?


<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>速度动画</title>

<style type="text/css">

body,div,span{

margin: 0;

padding: 0;

}


#div1{


width: 200px;


height: 200px;


background: red;


position: relative;


left: -200px;


top: 0;


}

#div1 span {


width: 20px;


height: 50px;


background: blue;


position: absolute;


left: 200px;


top: 75px;


}


</style>

<script>

window.onload=function(){

     var oDiv =document.getElementById("div1");

     oDiv.onmouseover=function(){

        startMove(0);   

       }  

     oDiv.onmouseout=function(){

        startMove(-200);   

       }  

   }

  var timer=null;

function startMove(iTarget){

  clearInterval(timer);

  var oDiv =document.getElementById("div1");

  timer=setInterval(function(){

  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";


},30)


}


</script>

</head>

<body>

<div id="div1">

<span>分享</span>

                  </div>

</body>

</html>


提问者:我背后有个胖子 2016-10-17 22:18

个回答

  • Cancer_bin
    2016-10-18 09:41:37

     if (oDiv.offsetLeft=iTarget)写错了,应该是 if (oDiv.offsetLeft==iTarget)