jq 动画

jq 动画

  • jq动画
  • 所有的jq动画都在一个运动队列中,一个运动走完再走下一个
  • jq常用动画
  • toggle()、fadeToggle()、slideToggle()会自动判断当前元素状态。
  • 例如当前元素为隐藏时,调用toggle 就是显示,反之则是隐藏
动画效果
show()显示
hide()隐藏
toggle()在显示隐藏之间切换
fadeIn()渐入
fadeOut()渐出
fadeToggle()在渐入渐出之间切换
slideUp()滑上
slideDown()滑下
slideToggle()在滑上和滑下之间切换
  • jq 自定义动画
    参数一:对象要运动的样式,和对象的目标点 必须为对象形式
    参数二:运动的时间 默认为400ms 单位为ms
    参数三:运动的样式 swing(缓冲的,慢快慢)、linear(匀速的),默认为swing
    参数四:回调函数,运动结束后的回调

  • 停止动画

动画效果参数
stop()停止当前运动,不会影响后续运动,直接执行后续运动
stop()停止后续所有运动true
stop()指定到当前运动的目标点,有动画过程true,true
finish()立即到运动的目标点,没有动画过程
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <title>Document</title>
    <style>
      #box1 {
        width: 200px;
        height: 200px;
        background: red;
        position: absolute;
        /* display: none; */
      }

      #box2 {
        width: 200px;
        height: 200px;
        background: blue;
        position: absolute;
        top: 200px;
        display: none;
      }
    </style>
    <script src="./jquery-3.4.1.js"></script>
  </head>
  <body>
    <button id="btn1">点击</button>
    <button id="btn2">停止</button>
    <div id="box1"></div>
    <div id="box2"></div>

    <script>
      //jq 动画
      //show() hide() toggle()  显示 隐藏  在显示与隐藏之间切换
      //show、hide、toggle 修改的是 width、height、opacity
      //toggle() 会自动判断元素状态

      // $('#btn1').on('click',function(){
      //     // $('#box1').show();
      //     $('#box1').toggle();
      // })

      //fadeIn() fadeOut() fadeToggle() 渐入、渐出 在渐入和渐出之间切换
      //fadeIn() fadeOut() fadeToggle() 修改的是opacity
      //动画默认时间 400ms 动画默认不是匀速运动
      //fadeToggle() 会自动判断元素状态

      // $('#btn2').on('click',function(){
      //     // $('#box2').fadeIn()
      //     $('#box2').fadeToggle();
      // })

      //slideUp() slideDown() slideToggle() 滑上、滑下、在滑上、滑下之间切换
      //slideUp()、slideDown()、slideToggle() 修改的是height

      // $('#btn1').on('click',function(){
      //     // $('#box1').slideDown()
      //     $('#box1').slideToggle()
      // })

      //jq 自定义动画 animate()
      //参数一:对象要运动的样式,和要运动的目标点 必须为对象
      //参数二:时间 单位 ms 默认400
      //参数三:运动的样式 默认 swing(缓冲的、慢快慢) linear(匀速) //必须加引号
      //参数四:回调函数 ,运动结束的回调

      // $("#btn1").on("click", function() {
      //   $("#box1").animate(
      //     {
      //       left: 300
      //     },3000,"linear",function() {
      //       $(this).animate({ top: 300 });
      //     }
      //   );
      // });

      $("#btn1").on("click", function() {  
        $("#box1").animate({left:300},1000).animate({top:300})
      });

      //停止动画 stop
      $("#btn2").on("click", function() {
         $('#box1').stop() //默认,停止当前运动,不会影响后续运动 
        //  $('#box1').stop(true); //停止后续的所有运动
        // $('#box1').stop(true,true) // 指定到当前运动的目标点 有动画过程
        // $('#box1').finish(); //立即到运动的目标点 没有动画过程
      });

      //所有的jq动画都在一个运动队列中,一个运动走完再走下一个

      //hover()  相当于 mouseover() mouseout() 可以有两个回调函数,两个函数用逗号隔开
      $("#box1").hover(
        function() {
          console.log("over");
        },
        function() {
          console.log("out");
        }
      );
    </script>
  </body>
</html>


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值