我正在尝试让一个jQuery效果/动画一个接一个地运行。我试过这个:
$('#myDiv').animate({'left':'+=300'},1000).delay(2000).animate({'left':'-=300'},1000);
修改
这实际上确实有效 - 这只是我的错误。链接效果会根据docs自动创建一个队列,这就是我们想要的:
$('#foo').slideUp().fadeIn();
执行此语句时, 元素开始滑动动画 立刻,但渐渐过渡 被放置在要调用的fx队列上 只有滑动过渡一次 完整。
(感谢您的帮助,不会让我删除这个问题)
答案 0 :(得分:0)
jQuery animate()有一个回调参数
用它你可以做到这一点
$('#myDiv').animate({'left':'+=300'},1000, function () {
//Start Next Animation
$(this).animate({'left':'-=300'},1000, function () {
//Start Next animation
});
})
答案 1 :(得分:0)
答案 2 :(得分:0)
您是否在div上设置了position: absolute;
(或relative
,具体取决于您的需求)?如果你没有,那么动画left
将不会做任何事情。这是一个有效的例子:http://jsfiddle.net/vftNF/