哪里错了吗

来源:4-1 JS多物体动画

weibo_本宫li不矫情

2016-10-03 11:29

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>多物体运动</title>
<style>
ul,li{
    list-style:none;
    
}
ul li{
    width:200px;
    height:100px;
    background:yellow;
    margin-bottom:20px;
    }    
 
</style>
<script>
window.onload=function(){
    var aLi=document.getElementsByName('li');
    for(var i=0;i<aLi.length;i++){
        aLi[i].onmouseover=function(){
            startMove(this,400);
            }
            aLi[i].onmouseout=function(){
                startMove(this,200);
                }
        }
    }
    var timer=null;
    function startMove(obj,iTarget){
        clearInterval(timer);//关闭定时器
        timer=setInterval(function(){//开启定时器.下面在定义速速
         var speed=(iTarget-obj.offsetWidth)/8;
            speed=speed>0?Math.ceil(speed):Math.floor(speed);
            if(obj.offsetWidth==iTarget){//如果当时宽度等于目标
                clearInterval(timer);
            }
            
                else{
                    obj.syle.width=obj.offsetWidth+speed+'px';
                    
                    }
            
            },30)
        
        }
</script>
</head>



<body>
<ul>
    <li></li>
    <li></li>
    <li></li>
</ul>
</body>
</html>

写回答 关注

1回答

  • franciswsl
    2016-10-03 16:02:27

      var aLi=document.getElementsByName('li')应该是getElementsByTagName

     obj.syle.width=obj.offsetWidth+speed+'px'   style写错了

    共 1 条回复 >

JS动画效果

通过本课程JS动画的学习,从简单动画开始,逐步深入各种动画框架封装

113925 学习 · 1443 问题

查看课程

相似问题