jQuery动画重新排列兄弟姐妹,直到动画完成。我怎么能阻止它?

时间:2012-03-28 20:45:28

标签: jquery jquery-animate

看看这个jsfiddle:http://jsfiddle.net/Dh96F/1/

“展开”按钮将为中间列的加宽设置动画。当它执行此操作时,您将看到在动画进行过程中事情如何转移到下一行。在签订合同时也是如此。

因为我对jQuery很新,所以我之前没有看过这个,我想知道它为什么会发生以及如何在动画完成时让所有兄弟姐妹保持在同一条线上。

感谢。

更新:已解决 - 感谢@Alnitak的教育。我在Drupal 6.x环境中使用jQuery,而jquery_update模块只会将jquery版本带到1.3.2。

我发现了这个模块的黑客,允许我使用我想要的任何jquery版本。您的升级建议只是门票!干杯!

1 个答案:

答案 0 :(得分:4)

jQuery 1.3.2很古老 - 请考虑升级。

如果在jsfiddle上选择jQuery 1.4.4或更高版本,则不会出现问题。

具体来说,当动画发生时,jQuery 1.3.2中的.animate()方法似乎覆盖了<ul>的样式而不是block而不是inline-block 。后来的版本没有这样做。

尝试http://jsfiddle.net/qDwYE/,我设置为在100ms后停止动画,然后显示display属性。然后转到jQuery 1.4.4并再试一次。

这似乎是bug #2185