【jQuery】after()を使って要素の後に新しい要素を挿入する!

要素の後に新しい要素を挿入するにはjQueryのafter()を使用します。

jQueryのafter()とはある要素Aの後ろにコンテンツ(ある要素Bなど)を挿入するメソッドであり、既にある要素の後ろに文字列や要素、jQueryオブジェクトを挿入することができます。

また、after()のパラメータに関数を使用することで、条件など何かしらの処理をした後に要素の後ろに新しいコンテンツを挿入することもできたり、既にある要素の順序を入れ替えたりすることもできます。

今回は、jQueryのafter()を使って要素の後に新しい要素を挿入する方法について以下の内容で解説していきます。

⚫︎ 要素の後に単数の新しい要素を挿入する場合
⚫︎ 要素の後に複数の新しい要素を挿入する場合
⚫︎ 条件などを指定して要素の後に新しい要素を挿入する場合

⚫︎ after()で既にある要素の順序を入れ替える方法

ハルトさん

今回はjQueryのafter()で要素の後に新しい要素を挿入する方法について説明していきます。

さとみさん

お願いします!

after()とは

after()とは、HTMLの各要素の後ろにコンテンツを挿入するメソッドとなります。
つまり、ある要素A内の後ろにある要素Bが追加されるようになります。

after()の書き方

after()の書き方は下記となります。

パラメータ

⚫︎ 追加する内容:
指定したセレクタの後ろに追加したい内容を指定する
(文字列や要素、jQueryオブジェクトを指定する)
⚫︎ 関数:
指定したセレクタの後ろに挿入したい文字列や要素、jQueryオブジェクトを返す関数を指定する

after()のパラメータに追加する内容を指定することで、追加した内容をセレクタ内の後に新しい要素を挿入することができます。
また、パラメータに関数を指定することで、条件など何かしらの処理を行った後にセレクタ内の後に新しい要素を挿入することができます。

要素の後に新しい要素を挿入するサンプルコード

要素の後に新しい要素を挿入するサンプルコードを紹介します。

要素の後に単数の新しい要素を挿入する場合

要素の後に単数の新しい要素を挿入する場合は、after()のパラメータに追加する要素を指定します。

sample.html

style.css

index.js

出力結果

after()のパラメータに追加したい要素を指定することで、要素の後に単数の新しい要素を挿入することができます。
その為、ボタンを押すと単数の要素が挿入されています。

要素の後に複数の新しい要素を挿入する場合

要素の後に複数の新しい要素を挿入する場合はafter()のパラメータに追加する要素を「,(カンマ)」で区切って配列で指定します。

sample.html

style.css

index.js

出力結果

after()のパラメータに追加したい要素をカンマで区切って指定することで、要素の後に複数の新しい要素を挿入することができます。
その為、ボタンを押すと複数の要素が要素が挿入されています。

条件などを指定して要素の後に新しい要素を挿入する場合

条件などを指定して要素の後に新しい要素を挿入する場合はafter()のパラメータに関数を指定します。

sample.html

style.css

index.js

出力結果

after()のパラメータに関数を指定することで、条件などを指定して要素の後に新しい要素を挿入することができます。
その為、btn1クラス、btn2クラス、btn3クラスのボタンの順に押さないと要素が挿入されないようになっています。

さとみさん

after()に関数を指定してを呼び出すことで、条件などを指定して要素の後に新しい要素を挿入できるのですね!

ハルトさん

そうですね。
サンプルコードではif文を使用し、条件を満たさなければ要素の後に新しい要素を挿入できないようにしています。
その為、何かしらの処理によって要素の後に新しい要素を挿入したい場合は関数を使用すると良いですよ。

after()で既にある要素の順序を入れ替える方法

after()で既にある要素の順序を入れ替えることができます。

sample.html

style.css

index.js

出力結果

after()のパラメータに$(セレクタ)を指定するすることで、既にある要素の順番を入れ替えることができます。
その為、ボタンを押すとpタグの要素の一番後ろへの入れ替えが行われます。

さとみさん

after()を使用して既にある要素の順序を入れ替えていますね!

ハルトさん

そうですね。
after()のパラメータに$(セレクタ)を指定することで既にある要素の順番を入れ替えることができますよ。
また、パラメータに$(セレクタ)はタグやクラス名、id名でも構いませんよ。

今回のポイント

after()で要素の後ろに新しい要素を挿入

⚫︎ 要素の後に新しい要素を挿入するにはjQueryのafter()を使用する

⚫︎ after()で要素の後に単数の新しい要素を挿入するにはパラメータに追加したい要素を指定する

⚫︎ after()で要素の後に複数の新しい要素を挿入するにはパラメータに追加したい要素をカンマで区切って指定する

⚫︎ 条件などを指定して要素の後に新しい要素を挿入する場合はafter()のパラメータに関数を指定する

⚫︎ after()で既にある要素の順序を入れ替えることができる

関連記事

jQueryのbefore()で要素の前に新しい要素を挿入する方法についてはこちらをご参考ください。

jQueryのprepend()で各要素の先頭に要素を挿入する方法についてはこちらをご参考ください。

jQueryのprependTo()で各要素の先頭に追加する方法についてはこちらをご参考ください。

Writer

ST

株式会社flyhawkのSTです。フライテックメディア事業部でのメディア運営・ライター業務なども担当。愛機はMac Book AirとThinkPad。好きな言語:swift、JS系(Node.js等)。好きなサーバー:AWS。受託開発やプログラミングスクールの運営をしております。ご気軽にお問い合わせください。

最新の案件情報