我想要做的是:为什么jQuery似乎不等待动画完成?
- 淡入进度条。
- 淡入淡出完成后,将进度条的动画设置为100%。
- 当进度条为100%时,淡出预处理栏。
- 当淡出完成时,重置进度条。
我想这个代码将提供解决方案:
$('#savebar').fadeIn('fast', function() {
$('#savebar .bar').animate({width: '100%'}, "slow", function() {
$('#savebar').fadeOut('fast', function() {
$('#savebar .bar').css({'width':'0%'});
});
});
});
的问题似乎是,在生命的完整功能的早期执行到。这是因为浏览器没有足够快地渲染进度条,或者我在这里丢失了什么?
这里是一个的说明问题的jsfiddle:http://jsfiddle.net/dub6P/
我同意这可以正常工作,但不是当动画完成时执行完整功能的想法吗?这是因为动画不会等待浏览器呈现每一步? – picknick
评论是正确的钱。尽管在这种情况下,这个答案“运作得很好”,但它并没有解决核心问题,即“完成”回调不等待动画完成。 – nathanchere