<!DOCTYPE html> 
<html> 
<head> 
<  charset=\" utf-8\"> 
<head>
< > 实现的简单动画</ >
<style type=\"text/css\">
#mydiv
{
  width:50px;
  height:50px;
  background-color:green;
  position:absolute;
}
</style>
<  type=\"text/ \"> 
window. =function()
{
  var mydiv=document.getElementById(\"mydiv\");
  var start=document.getElementById(\"start\");
  var stopmove=document.getElementById(\"stopmove\");
  var x=0;
  var flag;
  function move()
  {
    x=x+1;
    mydiv.style.left=x+\"px\";
  }
  start. =function()
  {
    clearInterval(flag);
    flag=setInterval(move,20);
  }
  stopmove. =function()
  {
    clearInterval(flag);
  }
 
}
</ >
<body>
<input type=\"button\" id=\"start\" value=\"开始运动\" />
<input type=\"button\" id=\"stopmove\" value=\"停止运动\" />
<div id=\"mydiv\"></div>
</body>
</html>

在线运行

代码解释:

  1. window. =function(){},当文档内容完全加载完毕再去执行函数中的代码。
  2. var mydiv=document.getElementById("mydiv"),获取id属性值为mydiv的元素。
  3. var start=document.getElementById("start"),获取id属性hi为start的元素。
  4. var stopmove=document.getElementById("stopmove"),获取id属性值为stopmove的元素。
  5. mydiv.style.left=x+"px",设置div的left属性值。
  6. start. =function(){},为start元素注册 事件处理函数。
  7. clearInterval(flag),停止定时器函数,一方多次单击开始按钮造成叠加效果。
  8. flag=setInterval(move,20),开始运动。
收藏 打印