Javascript 如何在jquery中链接多组动画?
假设我有几个功能,在这些功能中我可以做一些动画和其他事情:Javascript 如何在jquery中链接多组动画?,javascript,jquery,Javascript,Jquery,假设我有几个功能,在这些功能中我可以做一些动画和其他事情: function animations1() { $('some_object').animation(); ... } function animations2() { $('some_object').animation(); ... } function animations3() { $('some_object').animation(); ... } 链接这些函数的最佳方
function animations1() {
$('some_object').animation();
...
}
function animations2() {
$('some_object').animation();
...
}
function animations3() {
$('some_object').animation();
...
}
链接这些函数的最佳方法是什么,即在
animations1
完成时调用animations2
,在animations2
完成时调用animations3
?可以使用animate方法的回调函数:
$('some_object').animate({..}, 100, function(){
$('another_object').animate({..}, 100)
})
或:
您可以使用animate方法的回调函数:
$('some_object').animate({..}, 100, function(){
$('another_object').animate({..}, 100)
})
或:
如果要立即调用这三个函数,jQuery的效果队列将确保动画按顺序执行(而不是一次全部执行)。@amnotiam,不是真的,jQuery将尝试“同时”为它们制作动画@Adnan:如果使用问题中所示的相同选择器,则不会。@amnotiam,是的。是的,没有注意到他们使用的是同一个选择器。这是一个它们如何顺序而非并行运行的示例:如果您要立即调用所有三个函数,jQuery的效果队列将确保动画按顺序执行(而不是一次全部执行)。@amnotiam,不是真的,jQuery将尝试“同时”为它们设置动画@阿德南:如果使用的选择器与问题中所示的相同,则不会如此。@amnotiam,是的。是的,没有注意到他们使用的是同一个选择器。这是一个关于它们如何顺序运行而不是并行运行的示例:“假设我有几个函数…”在编辑时,您假设始终需要相同的顺序。我猜它们在不同的函数中是有原因的。@amnotiam,虽然你有一个完全正确的观点,但OP并没有把他的理由说清楚。@Adnan:你说得对。实际情况完全不清楚。@Raminson:仅供参考,这会更简洁一些<代码>$('other_object')。设置动画({..},100,animations3)“假设我有几个函数…”在编辑时,您假设始终需要相同的序列。我猜它们在不同的函数中是有原因的。@amnotiam,虽然你有一个完全正确的观点,但OP并没有把他的理由说清楚。@Adnan:你说得对。实际情况完全不清楚。@Raminson:仅供参考,这会更简洁一些<代码>$('other_object')。设置动画({..},100,animations3)