速報

Apache HTTP ServerのHTTP/2に認証不要RCE|2.4.71更新と構成別の確認

CATEGORY

【jQuery】fadeOut()やslideUp()を実行した後にremove()で要素を削除する

※本ページのリンクにはプロモーションが含まれています。

【jQuery】fadeOut()やslideUp()を実行した後にremove()で要素を削除する

目次

jQueryでfadeOut()やslideUp()を実行した後にremove()で要素を削除する方法のご紹介です。

サイト制作、とくにjQueryでアニメーションの処理を作ったりしていると、これを実行した後にあれを実行したい!という場面によく出くわします。例えばある要素の「×」ボタンを推すと、要素がフェードアウトして削除されるといったような感じです。

jQueryで複数の処理を順番に実行するというのは色々と応用が効くかと思います。

本記事ではfadeOutやslideUpといったアニメーションを実行した後に要素をremoveするサンプルで、複数の処理を順番に実行する方法をご紹介していきます。

では、解説していきます。

スポンサーリンク

コールバック関数にremove()を指定する

fadeOutやslideUpはを指定することができます。コールバック関数はアニメーションが終わった後に実行する処理を指定することができます。コールバック関数を使用してfadeOutやslideUpを実行した後にremove()の処理を実行することができます。

指定方法はとても簡単です。fadeOutやslideUpの第二引数にコールバック関数を指定します。具体的には下記のような記述になります。

JS

//fadeOut();
$('selector').fadeOut(1000, function() {
  $(this).remove();
});

//slideUp();
$('selector').slideUp(1000, function() {
  $(this).remove();
});

コールバック関数で次の処理を指定すると、アニメーションとまとめて記述することができます。処理の流れがわかりやすく使いやすい印象です。詳しい仕様につきましては下記のリンクをご参照いただければと思います。

.fadeOut() | jQuery API Documentation

.slideUp() | jQuery API Documentation

キューで処理する

続いてはキューで処理する方法のご紹介です。

fadeOutやslideUpが完了した後に実行する処理をキューに設定します。指定方法はとても簡単です。fadeOutやslideUpの後にキューを設定するだけです。

JS

//fadeOut();
$('selector').fadeOut(1000).queue(function() {
  $(this).remove();
});

//slideUp();
$('selector').fadeOut(1000).queue(function() {
  $(this).remove();
});

上記のサンプルではqueueに一つだけ処理を設定しておりますが、複数設定することも可能です。その場合はdequeueを活用します。詳しくは下記のリンク先をご参照いただければと思います。

.queue() | jQuery API Documentation

スポンサーリンク

when()、done()で順番に処理する

最後にwhen()、done()で処理する順番を指定する方法のご紹介です。

when()、done()はajaxでよく使用するかと思います。whenに先に実行する処理を、doneに後に実行する処理を指定します。具体的には下記のように記述します。

JS

$.when(
  $('selector').fadeOut(1000)
).done(function(){ 
  $('selector').remove();
});

注意点として、when()の中に指定する処理の最後はセミコロンではなくカンマで区切ります。詳しくは下記のリンクをご参照ください。

jQuery.when() | jQuery API Documentation

deferred.done() | jQuery API Documentation

最後に

jQueryで続けて処理を実行したい場面はよくあるかと思います。処理の内容によって適宜使い分けていただければと思います。

以上、jQueryでfadeOut()やslideUp()を実行した後にremove()で要素を削除する方法のご紹介でした!

この記事を書いた人

Ryohei

Webエンジニア / アプリ開発者 / 技術ブログ運営者

福岡のWeb制作会社に勤務するWebエンジニアです。10年以上にわたりWeb制作・開発に携わり、ヒアリングや進行管理から、コーディング、CMSの構築、システム開発、サーバーの構築・保守・運用まで、Webサイト制作の工程を幅広く担当しています。Webサイトは、これまでに100以上の構築・保守を手がけてきました。

個人でもWebサイトの制作・改修やWebアプリの開発・運用を行い、AIを活用した開発にも取り組んでいます。近年はWebセキュリティにも注力しています。

2015年から技術メディア「Into the Program」を運営し、実務や開発で得た知識をもとに、プログラミングの実装方法やWebサイトの運用・セキュリティ情報を発信しています。

主な分野
Webサイト構築・保守・運用 / HTML/CSS / JavaScript / PHP / WordPress / サーバー構築・保守・運用 / アプリ開発 / セキュリティ対策
資格・試験合格
情報セキュリティマネジメント試験
基本情報技術者試験
AWS認定ソリューションアーキテクト アソシエイト
PHP8技術者認定ウィザード
メディア運営
2015年〜

記事の作成・更新について

セキュリティ記事は、ベンダーの公式アドバイザリやCVE・JVNなどの一次情報を参照し、出典と情報確認日を記載します。実環境での検証を行った場合は、その環境と確認範囲を明示します。重要な追加情報や誤りを把握した場合は、内容を確認して追記・訂正します。

関連する記事

おすすめの書籍

キーワードから探す

スポンサーリンク

コールバック

ほかの関数に引数として渡し、処理の完了時や出来事が起きたときなどに呼び出してもらう関数。

詳しく見る