jQueryでfadeOutの後にremove

  • 51
    いいね
  • 2
    コメント
この記事は最終更新日から1年以上が経過しています。

要素をフェードアウトした後に削除しようと、

sample.js
$(this).fadeOut('fast').remove();

としてみたところ、
フェードアウトせずにそのまま消えてしまった。

ちょっと調べてみると、処理を待つキューに入る処理と入らない処理があるとのこと。
エフェクト系は概ね入るようだけど、remove()はキューに入らない。
キューに入れるには.queue()を使う。

sample.js
$(this).fadeOut('fast').queue(function() {
  this.remove();
});

これでフェードアウトを待って削除できる。