加载中...

finish()1.9+


概述    .finish( [queue ] )

返回值:jQuery

描述:停止当前正在运行的动画,删除所有排队的动画,并完成匹配元素所有的动画。

  • V : 1.9.finish( [queue ] )

    • queue (默认: 'fx')
      类型: String
      停止动画队列中的名称。

.finish()在一个元素上被调用,立即停止当前正在运行的动画和所有排队的动画(如果有的话),并且他们的CSS属性设置为它们的目标值(手册网注:就是所有动画的目标值)。所有排队的动画将被删除。

如果第一个参数提供,该字符串表示的队列中的动画将被停止。

.finish()方法和.stop(true, true)很相似,.stop(true, true)将清除队列,并且目前的动画跳转到其最终值。但是,不同的是,.finish() 会导致所有排队的动画的CSS属性跳转到他们的最终值。

动画可能因为全局的$.fx.off 属性设置为 true而停止。当这样做时,所有动画方法将立即设置元素的css属性为其最终调用后的状态,而不是显示动画效果。

示例

Click the Go button once to start the animation, and then click the other buttons to see how they affect the current and queued animations.

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <style>.box {
  5. position: absolute;
  6. top: 10px;
  7. left: 10px;
  8. width: 15px;
  9. height: 15px;
  10. background: black;
  11. }
  12. #path {
  13. height: 244px;
  14. font-size: 70%;
  15. border-left: 2px dashed red;
  16. border-bottom: 2px dashed green;
  17. border-right: 2px dashed blue;
  18. }
  19. button {
  20. width: 12em;
  21. display: block;
  22. text-align: left;
  23. margin: 0 auto;
  24. }
  25. </style>
  26. <script src="http://code.jquery.com/jquery-latest.js"></script>
  27. </head>
  28. <body>
  29. <div class="box"></div>
  30. <div id="path">
  31. <button id="go">Go</button>
  32. <br>
  33. <button id="bstt" class="b">.stop(true,true)</button>
  34. <button id="bcf" class="b">.clearQueue().finish()</button>
  35. <br>
  36. <button id="bstf" class="b">.stop(true, false)</button>
  37. <button id="bcs" class="b">.clearQueue().stop()</button>
  38. <br>
  39. <button id="bsff" class="b">.stop(false, false)</button>
  40. <button id="bs" class="b">.stop()</button>
  41. <br>
  42. <button id="bsft" class="b">.stop(false, true)</button>
  43. <br>
  44. <button id="bf" class="b">.finish()</button>
  45. </div>
  46. <script>
  47. var horiz = $("#path").width() - 20,
  48. vert = $("#path").height() - 20;
  49. var btns = {
  50. bstt: function () {
  51. $("div.box").stop(true, true);
  52. },
  53. bs: function () {
  54. $("div.box").stop();
  55. },
  56. bsft: function () {
  57. $("div.box").stop(false, true);
  58. },
  59. bf: function () {
  60. $("div.box").finish();
  61. },
  62. bcf: function () {
  63. $("div.box").clearQueue().finish();
  64. },
  65. bsff: function () {
  66. $("div.box").stop(false, false);
  67. },
  68. bstf: function () {
  69. $("div.box").stop(true, false);
  70. },
  71. bcs: function () {
  72. $("div.box").clearQueue().stop();
  73. }
  74. };
  75. $("button.b").on("click", function () {
  76. btns[this.id]();
  77. });
  78. $("#go").on("click", function () {
  79. $(".box")
  80. .clearQueue()
  81. .stop()
  82. .css({
  83. left: 10,
  84. top: 10
  85. })
  86. .animate({
  87. top: vert
  88. }, 3000)
  89. .animate({
  90. left: horiz
  91. }, 3000)
  92. .animate({
  93. top: 10
  94. }, 3000);
  95. });
  96. </script>
  97. </body>
  98. </html>

运行一下


还没有评论.