为了账号安全,请及时绑定邮箱和手机立即绑定

如何延时当前动画?如何停止动画后再继续?

问题1:怎么才能延时当前动画呢?delay只能延时下一个动画,当代码里只有一个动画,而且需要有延时功能时怎么办呢? 问题2:stop方法停止当前动画后,再继续未完成的动画,该怎么办呢? 除了自己设计函数解决,还有没有简洁的解法?

正在回答

3 回答

我也是参考楼上的例子做的

<html>

<head>

<script type="text/javascript" src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>

<script type="text/javascript"> 

$(document).ready(function(){

    $("div").html("")

  $("#start").click(function(){

    $("#box").animate({height:300},"slow",function(){

       $(this).animate({width:300},"slow",function(){

       $(this).animate({height:100},"slow",function(){

       $(this).animate({width:100},"slow",function(){

           $("div").html("完成!")

       })    

       });

       });

    });

   

  });

  $("#stop").click(function(){

    $("#box").stop();

  });

  

   $("#delay").click(function(){

    $("#box").delay(2000);

  });

});

</script>

</head>


<body>

<p>

<button id="start">Play</button>//开始

<button id="stop">Stop</button>//停止

<button id="delay">Delay</button>//延时

</p>

<div id="box" style="background:#98bf21;height:100px;width:100px;position:relative"> </div>

</body>

</html>


1 回复 有任何疑惑可以回复我~

给你参考下 ,我也是参考W3C的例子做的

<html>

<head>

<script type="text/javascript" src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>

<script type="text/javascript"> 

$(document).ready(function(){

    $("div").html("")

  $("#start").click(function(){

    $("#box").animate({height:300},"slow",function(){

       $(this).animate({width:300},"slow",function(){

       $(this).animate({height:100},"slow",function(){

       $(this).animate({width:100},"slow",function(){

           $("div").html("完成!")

       })    

       });

        });

    });

   

  });

  $("#stop").click(function(){

    $("#box").delay(2000);

  });

});

</script>

</head>


<body>


<p><button id="start">Start Animation</button><button id="stop">Delay Animation</button></p>


<div id="box" style="background:#98bf21;height:100px;width:100px;position:relative">

</div>

 

</body>

</html>


0 回复 有任何疑惑可以回复我~

问题1.可以直接对需要延时的动画使用delay方法,无需bind。问题2我也在思考,希望能有高手指点。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
jQuery基础课程
  • 参与学习       154768    人
  • 解答问题       7184    个

加入课程学习,有效提高前端开发速度

进入课程

如何延时当前动画?如何停止动画后再继续?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信