javascript - jquery 和动画有多异步?

标签 javascript jquery jquery-animate

我的脚本出现了一些不可预测的错误,我开始认为它可能与我使用的动画有关。

我有一个元素附加了触发动画的 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/

相关文章:

javascript - typescript 构造函数参数。解析错误: Unexpected reserved word 'public'

jquery - CSS/jquery if() css效果

jQuery - 销毁动画

javascript - 如何在intel xdk中激活页面时运行函数

jquery - 导航栏的动画图片

javascript - JS错误: Uncaught ReferenceError: makePicSmall is not defined

javascript - 如何在不更改其子元素的情况下更改元素 innerText

javascript - 动态填充 JavaScript 数组

javascript - 每 5 秒刷新一次 Fancybox

jquery - 当我将鼠标悬停在这个 bootstrap btn-info 上时,它会失去背景颜色