如何延时当前动画?如何停止动画后再继续?
问题1:怎么才能延时当前动画呢?delay只能延时下一个动画,当代码里只有一个动画,而且需要有延时功能时怎么办呢? 问题2:stop方法停止当前动画后,再继续未完成的动画,该怎么办呢? 除了自己设计函数解决,还有没有简洁的解法?
2015-12-01
我也是参考楼上的例子做的
<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>
给你参考下 ,我也是参考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>
举报