美文网首页我爱编程
jQuery 动画队列相关

jQuery 动画队列相关

作者: jrg_tzc | 来源:发表于2018-05-17 21:47 被阅读0次

    queue()

    queue()方法可以接受一个可选参数,可以得到动画队列的长度。
    queue()方法可以接受一个回调函数作为参数,表示将要添加到队列中的新函数。但回调函数中,可以进行样式变换等,但不可以增加动画效果。
    队列执行完queue()的函数后,队列后面的动画效果被停止,这时就需要用到dequeue()方法

    dequeue()

    dequeue()方法用来执行匹配元素队列的下一个函数

    clearQueue()

    与deQueue()方法相反,clearQueue()方法用来从列队中移除所有未执行的项,但并不影响当前动画效果

    <!doctype html>
    <html lang="en">
    <head>
      <meta charset="utf-8">
      <title>demo</title>
      <style>
      div {
        margin-top:50px;
        width: 50px;
        position: absolute;
        height: 50px;
        left: 10px;
        top: 30px;
        background-color: yellow;
      }
      div.red {
        background-color: red;
      }
      </style>
      <script src="https://code.jquery.com/jquery-1.10.2.js"></script>
    </head>
    <body>
    <p id="num">0</p>
    <button>Start</button>
    <button class="clear">Clear</buttton>
    <div></div>
     
    <script>
    $( "button" ).click(function() {
      showIt()
      $( "div" )
        .animate({ left:"+=200px" }, 2000 )
        .animate({ top:"0px" }, 600 )
        .queue(function() {
          $( this ).toggleClass( "red" ).dequeue();
        })
        .animate({ left:"10px", top:"30px" }, 700 );
    });
      function showIt(){
      var num = $('div').queue().length
      $('#num').text(num);
      setTimeout(showIt,10)
    }
    $('.clear').click(function(){
       $( "div" ).clearQueue()
    })
    </script>
     
    </body>
    </html>
    

    相关文章

      网友评论

        本文标题:jQuery 动画队列相关

        本文链接:https://www.haomeiwen.com/subject/dmdidftx.html