<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style type="text/css">
 *{padding:0;margin:0;}
        ul,li{list-styleLnone;}
        ul li{
            width:200px;
 height:100px;
 line-height:100px;
 background:yellow;
 margin-bottom:20px;
 }
    </style>
    <script >
 window.onload=function()//网页刚打开的就时候执行函数
 {
           var aLi=document.getElementById("li");
 for(var i=0;i<aLi.length;i++)
           {
               aLi[i].onmouseover=function()//鼠标移上去的时候执行函数function
 {
                   startMove(this,400);//参数1 开始运动到400这个位置
 }
               aLi[i].onmouseover=function()
               {
                   startMove(this,200);//参数2 返回运动到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);
 //速度=速度>0那么向上取整:否则向下取整;
 if(obj.offsetWidth == iTarget)
               {
                   clearInterval(timer);
 }
               else
 {
                   obj.style.width = obj.offsetWidth + speed + 'px';
 }
           },30)
       }
    </script>
</head>
<body>
<ul>
    <li></li>
    <li></li>
    <li></li>
</ul>
</body>
</html><!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Title</title>
<style type="text/css">
*{padding:0;margin:0;}
ul,li{list-style:none;}
ul li{
width:200px;
height:100px;
line-height:100px;
background:yellow;
margin-bottom:20px;
}
</style>
<script >
window.onload=function()//网页刚打开的就时候执行函数
{
var aLi=document.getElementsByTagName("li");
for(var i=0;i<aLi.length;i++)
{
aLi[i].timer=null;
aLi[i].onmouseover=function()//鼠标移上去的时候执行函数function
{
startMove(this,400);//参数1 开始运动到400这个位置
}
aLi[i].onmouseout=function()
{
startMove(this,200);//参数2 返回运动到200这个位置
}
}
}
// var timer = null;
function startMove(obj,iTarget)//前面有两个参数,这里也要写两个参数
{
clearInterval(obj.timer);//关闭定时器
obj.timer = setInterval(function()
{ /*对象的可见宽度*/ //即距离
var speed =(iTarget-obj.offsetWidth)/8;//速度=(目标值-东西的宽度)/时间
speed = speed >0?Math.ceil(speed):Math.floor(speed);
//速度=速度>0那么向上取整:否则向下取整;
if(obj.offsetWidth == iTarget)
{
clearInterval(obj.timer);
}
else
{
obj.style.width = obj.offsetWidth + speed + 'px';
}
},30);
}
</script>
</head>
<body>
<ul>
<li></li>
<li></li>
<li></li>
</ul>
</body>
</html>
if(obj.offsetWidth == iTarget)
if判断句应该是2个==号
 这样应该可以吧
 这样应该可以吧
 var aLi=document.getElementById("li"); 这里li是标签名啊,
 应该是var aLi=document.getElementsByTagName('li');注意一下这个aLi是一个数组。
 var timer = null;还有这里,老师演示的时候不是给每个方块都分配一个timer吗?aLi[i].timer=null;相应的startMove方法里面也要改一下。