我的脚本出现了一些不可预测的错误,我开始认为它可能与我使用的动画有关。
我有一个元素附加了触发动画的 click() 事件。有点像
$(el).click(function() {
$(this).animate({some properies}, 500);
});
假设我们稍微扩展一下
$(el).click(function() {
$(this).stop(true, true);
fancyFunction(this);
$(this).animate({some properies}, 500);
});
我现在添加了对 fancyFunction 的调用,重要的是我停止了对象上正在进行的动画(例如,以防我双击)。另外为了记录 fancyFunction() 必须确保没有动画在元素上运行。
我认为这可能是我遇到的问题。您能否确定 stop() 在调用下一行之前完成,在本例中是 fancyFunction(),或者 fancyFunction 会在 stop() 启动后立即触发,但不一定完成?如果它的行为与动画类别中的其他函数一样,我想不会。
如果这可能是问题所在,您有什么解决方案?
最佳答案
.stop()
是同步的,没有超时等...它将在下一条语句之前完成。我认为您的问题很可能出在其他地方,因为您所拥有的将杀死该元素上的所有动画。
关于javascript - jquery 和动画有多异步?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4546717/