我基本上有这个代码:
for (var i = 0; i < num; i++) {
ShowCard(i);
}
现在,ShowCard只是添加了一个DOM元素,但是我想让它有一个动画,让这张卡从其他地方(鞋子)飞到最终目的地,我想要第二张卡片等到第一个飞行开始前完成飞行。
有没有办法实现这一点,而不是重写我的整个代码&#34;继续传递&#34;风格?
我假设答案是否定的,我必须咬紧牙关并做到这一点,但我想我会问。
谢谢!
丹尼尔
答案 0 :(得分:3)
答案是否定的。
JavaScript中唯一的阻止API是内置的 - alert
,confirm
和prompt
。
答案 1 :(得分:2)
您可以尝试jQuery的新deferred
API。
答案 2 :(得分:1)
您可以输入一个全局锁定变量inMotion
,表示第二张卡无法移动。然后在调用第二张卡移动的代码中,你可以检查这个布尔值,如果没有时间移动,可以使用setTimeout或setInterval连续调用你的方法,直到它移动它为止。
答案 3 :(得分:0)
邪恶黑客:不要让你的动画使用setTimeout和朋友(放弃控制流的功能),使用while循环,旋转锁定风格使它们工作愚蠢。在伪代码中:
next_time = curr_time + delta;
while(get_time() < next_time){} //Do nothing