如果#red完全没有fadeOut,我怎样才能制作#blue动画?我的意思是:
1. red fadeOut
2.等待1秒钟
3.蓝色动画......
$(function(){
$("#blue").click(function() {
$("#red").fadeOut("slow");
$("#blue").animate({top:'20px'},"slow").delay(1000).fadeOut("slow");
});
})
您可以在这里玩游戏:http://jsfiddle.net/J8PVZ/
答案 0 :(得分:3)
使用fadeout
回调并在delay
之前移动animate
:http://jsfiddle.net/J8PVZ/1/
$(function(){
$("#blue").click(function() {
$("#red").fadeOut("slow",function(){
$("#blue").delay(1000).animate({top:'20px'},"slow").fadeOut("slow");
});
});
})
答案 1 :(得分:1)
您需要了解fadeOut()
的回调函数,如此处的文档所示:
http://api.jquery.com/fadeOut/
您还需要在动画制作之前延迟。
$(function(){
$("#blue").click(function() {
$("#red").fadeOut("slow", function() {
$("#blue").delay(1000).animate({top:'20px'},"slow").fadeOut("slow");
});
});
});
答案 2 :(得分:1)
您可以使用fadeout回调函数并使用.promise().done()
:
$("#blue").click(function () {
$("#red").fadeOut("slow").promise().done(function(){
$("#blue").delay(1000).fadeOut("slow")
});
});
答案 3 :(得分:0)
http://api.jquery.com/fadeOut/
使用回调方法
$(document).ready(function(){
$("#blue").bind('click',function() {
$("#red").fadeOut("slow",function(){
$("#blue").animate({top:'20px'},"slow").delay(1000).fadeOut("slow");
});
});
}
);