我正在创建一个幻灯片,想知道我是否可以从 append() 函数中获得一个 Promise,以便只有在下一张幻灯片到位时才能触发动画。
$.when( $('#slides').append('<div class="slide"></div>') ).done(animation);
当我尝试上述方法时,动画会在附加幻灯片之前发生。我的意图是让动画仅在幻灯片附加到元素后开始。
更新
我的幻灯片显示为按钮上的点,当单击该按钮时,触发 (1) 要附加到的请求的幻灯片#slides
和 (2)left
第一张幻灯片的 (假设现在有 2 张幻灯片) 减少,以 (3):first
幻灯片结束已移除。由于append()
是 async [@Guffa],因此在火灾left
发生之前会减少。append()
示例:jsfiddle
更新
我试过使用
$.when( $('#slides').append('<div class="slide"></div>').promise() ).then(animation);
而且它也没有提供所需的动画。