我正在制作幻灯片,想知道我是否可以从append()函数中获取Promise,这样我就可以在下一张幻灯片到位时触发动画。
$.when( $('#slides').append('<div class="slide"></div>') ).done(animation);
当我尝试上述操作时,动画会在添加幻灯片之前发生。我的目的是让动画仅在>> 后将幻灯片添加到元素中。
更新
我的幻灯片显示为按钮上的点,当点击时,触发(1)请求的幻灯片将附加到#slides
和(2)第一张幻灯片的left
(假设现在有减少了2张幻灯片,结束于(3):first
幻灯片被删除。由于append()
是异步[@Guffa],left
的递减发生在append()
之前。
示例:jsfiddle
更新
我尝试过使用
$.when( $('#slides').append('<div class="slide"></div>').promise() ).then(animation);
并且它也没有提供所需的动画。