可以写一个完事的代码吗?我虽然知道用setInterval可能不行,但如何用setTimeout来实现我要达到的效果,我却不知道。

解决方案 »

  1.   

    <body onload="window.setInterval('dong()',50)">
    <img id="tu" src="159.gif" width=100 height=100 style="position:absolute;top=10;left=10" >
    </body>
    <script language="javascript">
    var tu=document.getElementById("tu");
    var top=10;
    var left=10;
    function dong()
    {
    tu.style.top=top;
    tu.style.left=left;
    if(left<500)
    {
    top=top+10;
    left=left+10;
    }
    else
    {
    top=left=10;
    }
    }
    </script>
      

  2.   

    你要的应该是这样的:<body onload="window.setInterval('dong()',50)">
    <img id="tu" src="159.gif" width=100 height=100 style="position:absolute;top=10;left=10" >
    </body>
    <script language="javascript">
    var tu=document.getElementById("tu");
    var top=left=10;
    var downX=downY=true;
    function dong()
    {
    tu.style.top=top;
    tu.style.left=left;
    if(downX && top<document.body.clientHeight-100)
    top+=10;
    else
    {
    top-=10;
    downX=false;
    if(top<10) downX=true;
    }
    if(downY && left<document.body.clientWidth-100)
    left+=10;
    else
    {
    left-=10;
    downY=false;
    if(left<10) downY=true;
    }
    }
    </script>