js动画函数封装

mouse enter 和mouse over的区别

mouse enter 鼠标事件

类似,mouse over 他们两者的区别是

mouse over鼠标经过盒子会触发,经过盒子还会触发,mouse enter只会经过自身盒子才会触发。

动画函数封装

动画:

核心原理就是通过定时器不断移动盒子的位置。

实现步骤:

1. 获得当前盒子的位置

2.让盒子在当前位置上加上一个移动距离。

3.利用定时器不断的重复这个操作

4.加一个结束定时器的条件

5.注意元素需要添加单位才能使用element.style.left

2.动画函数的封装

注意函数需要传递两个参数:动画对象和移动到的距离。

十分简单的js动画封装函数

    <style>
      div {
        position: absolute;
        width: 200px;
        height: 200px;
        background-color: red;
      }

      span {
        position: absolute;
        top: 400px;
        display: block;
        width: 150px;
        height: 150px;
        background-color: yellowgreen;
      }
    </style>
  </head>
  <body>
    <button>点击周周才走</button>
    <div></div>
    <span>周周</span>
    <script>
      let div = document.querySelector("div");
      let span = document.querySelector("span");
      let but = document.querySelector("button");

      function dhua(obj, tantes) {
        //清除以前的定时器,只保留当前一个定时器函数执行。
        clearInterval(obj.times);
        //给不同元素赋值,不会开辟新的空间。
        obj.times = setInterval(function () {
          if (obj.offsetLeft >= tantes) {
            clearInterval(times);
          }
          obj.style.left = obj.offsetLeft + 1 + "px";
        }, 30);
      }
      dhua(div, 300);
      but.addEventListener("click", function () {
        dhua(span, 200);
      });
    </script>
  </body>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值