动画'insertBefore'jquery

时间:2010-07-15 14:34:02

标签: jquery

有没有办法为'inserBefore'添加动画?我有一个奇怪的业务要求,导航中的标签从右边的最后一个位置移动到左边的第一个位置。

当这种情况发生并希望以动画方式移动时,企业希望它变得明显。

这是一个简单的例子:

说这是导航问题。

<ul id="test">
  <li>First Item</li>
  <li>Second Item</li>
  <li>Third Item</li>
  <li>Fourth Item</li>
  <li>LAST Item</li>
 </ul> 

是否可以将以下行为设为动画?

$("li:last").insertBefore("li:first");

2 个答案:

答案 0 :(得分:17)

你可以这样做:

$("li:last").slideUp(function() {
  $(this).insertBefore("li:first").slideDown();
})​;​

You can test it here,他们的关键是在动画完成后通过在回调中完成.insertBefore()。这是几个动画选项中的一个,例如你也可以使用any of the effects here(你需要为它们包含jQuery UI)。

答案 1 :(得分:4)

试试这个,看看你是否可以编辑动画来做你想做的事。

$('li:last')
    .animate({height:'toggle'},200)
    .insertBefore('li:first')
    .animate({height:'toggle'},200);