質問

私は2つのULに関して、一方が他方の上を持っています

<ul id="one">
  <li>
  <li>
<ul>
<div id="div_for_second_UL">
  <ul>
   <li>
  </ul>
</div>

は、最初に、各LIは、クリックすると、LIを除去し、ギャップを埋めるために、1つの空間アップ以下のLIバンプボタンを有しています。それは正常に動作します。しかし、私はそれが下のリストの最初の項目になるようにクリックされたLIは同時に、次のULの先頭に追加することにしたいです。今、私はこれをしようとしています:

        li.fadeOut(500, function() {$(li).remove(); });
        li.insertBefore('#div_for_second_UL');

私はまた、代わりのinsertBeforeのprependToを使用してみました。そして、私は2番目のULにIDを追加するとのinsertBefore内の引数としてそれを使用してみました。それぞれに対する結果は同じである。

-the LIが消えて、同じ内容で置き換えられますが、unstyled -the新しいコンテンツがフェードアウト効果が終了していないと思われるので、消えます。

どこが間違っている?

おかげで...

役に立ちましたか?

解決

これを試してみます:

li.fadeOut(500, function() {
     li.prependTo('#div_for_second_UL ul').fadeIn(); 
});

http://jsfiddle.net/Nf84m/1/する

他のヒント

うん。あなたは要素のクローンを作成していないので、アニメーションが終了したときにそれが削除されます。あなたは、そのアクションの同期を維持するために、アニメーションのコールバックでプリペンドを実行する必要があります。

これを試してください:

li.fadeOut(500, function() {li.prependTo('#div_for_second_ul ul');});
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top