jQuery 动画 - 什么时候是异步的,什么时候不是?

标签 jquery jquery-animate

我有两个要设置动画的 div:

<div id="character">
  <div id="sprite"></div>
</div>

我在 jQuery 中调用 animate,如下所示:

$("#sprite").animate({"width" : "1", }, 400 );
$("#character").animate({"width" : "1", }, 400 );
$("#character").animate({"margin-left" : "0", }, 400 );

但是,前两个动画似乎同时执行,而第三个动画仅在其他动画完成后才开始。

为什么前两个是异步的,而第三个不是?如何让他们三个同时运行?

最佳答案

第二个 $("#character").animate 已排队。 如果您有 2 个 $("#character"),第二个仅在第一个完成时发生。 你可以做的是:

$("#character").animate({"margin-left" : "0", "width" : "1", }, 400 );

使两个动画同时发生,或者:

$("#character").animate({"width" : "1"}, {"duration":400, "queue": false});
$("#character").animate({"margin-left" : "0"}, {"duration":400, "queue": false});

关于jQuery 动画 - 什么时候是异步的,什么时候不是?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8072116/

相关文章:

javascript - 有时刷新页面时,jQuery 隐藏的内容会出现几秒钟

javascript - 如何从 jquery ajax 调用中获取 js 中的 json 字符串?

Javascript文本动画: Bigger and bigger,然后消失

javascript - jquery animate() 在原型(prototype)中不起作用

jquery - Summernote onKeyup 事件没有按预期工作

javascript - 我有一个 'n' 的数组,如何使用 jQuery 将所有数组连接到一个数组中

jquery - 在复选框单击时设置 cookie(使用 jquery)

jquery 动画高度弹跳

jquery鼠标悬停效果bug,mouseover事件总是在mouseout时触发几次

jquery - 停止当前 CSS 过渡动画