jQuery「.prev() / .prevAll()」で直前の兄弟要素を取得する方法
jQueryの「.prev()と.prevAll()」は、指定要素の直前の兄弟要素を取得する事ができるメソッド
今回は、jQueryの「.prev()と.prevAll()」について、その違いと使い方をサンプルを交えて解説しよう。
直前ではなく直後の兄弟要素を取得したい場合は.next()
.nextAll()
、すべての兄弟要素を取得したい場合は.siblings()
というメソッドがあるのでこちらを参考にどうぞ。
目次
.prev()の機能とは?
.prev()は、「指定要素の直前の兄弟要を取得する」事ができる。
また、引数に取得する要素の条件を指定する事で、絞り込む事も可であり、条件に合わない場合は取得しない。
「直前の兄弟要素」とは、ひとつ前の要素であり、直前の要素を1つだけを取得する場合にこの.prev()
メソッド利用する。
指定要素より前の要素をすべて取得したい場合は.prevAll()
を使う
.prev()の構文
.prev()
の構文は次のような記述となる
$("セレクタ").prev("取得要素の条件");
「引数の取得要素の条件」は、指定する要素にマッチすれば取得し、マッチしなければ取得しない。
引数を「空欄」にすれば、直前の兄弟要素さえ存在すれば必ず取得する事になる(直前に兄弟要素がなければ取得できない)。
.prev()の使用例
たとえば次のようなHTMLがあったとする
<div>
<p>りんご</p>
<p>バナナ</p>
<p class="target">みかん</p>
<p>もも</p>
</div>
$(function(){
$(".target").prev().css("color","red")
});
この例ではclass="target"
の直前の兄弟要素を取得して.css("color","red")
で取得した要素の色を赤に変更する事ができ、この場合「バナナ」の文字が赤色に変わる。
実際の動きをcodePenで見てみよう。
See the Pen jquery-prev by stand4u (@stand4u) on CodePen.
.prev()の引数に取得要素の条件を指定した場合
上記と同じHTMLで引数に「取得要素の条件を指定」した場合を見ていこう。
<div>
<p>りんご</p>
<p>バナナ</p>
<p class="target">みかん</p>
<p>もも</p>
</div>
$(function(){
$(".target").prev("span").css("color","red")
});
この例では.prev("span")
とする事で、直前の兄弟要素がspan
の場合のみ取得するという条件を指定する事になるが、この場合直前の兄弟要素は<p>バナナ</p>
と条件にマッチしないので、取得しない事になる。
.prevAll()の機能とは?
.prevAll()は、「指定要素の前の兄弟要をすべて取得する」事ができる。
また、引数に取得する要素の条件を指定する事で、絞り込む事も可能であり、条件に合わない場合は取得しない。
.prev()
と違い.prevAll()
は「前の兄弟要素すべて」取得する事ができ、引数に取得要素を指定する事でより広範囲にて要素を拾う事ができる。
.prevAll()の構文
.prevAll()
の構文は次のような記述となる
$("セレクタ").prevAll("取得要素の条件");
「引数の取得要素の条件」は、指定する要素にマッチすれば取得し、マッチしなければ取得しない。
引数を「空欄」にすれば、前の兄弟要素さえ存在すれば、前の兄弟要素をすべて取得する事ができる。
.prevAll()の使用例
さきほどの例と同じHTMLがあったとする
<div>
<p>りんご</p>
<p>バナナ</p>
<p class="target">みかん</p>
<p>もも</p>
</div>
$(function(){
$(".target").prevAll().css("color","red")
});
この例ではclass="target"
より前の兄弟要素を取得して.css("color","red")
で取得した要素の色を赤に変更する事ができ、この場合指定要素より前に存在する兄弟要素である、「りんご」「バナナ」の文字が赤色に変わる。
実際の動きをcodePenで見てみよう。
See the Pen jquery-prev by stand4u (@stand4u) on CodePen.
prevAll()の引数に取得要素の条件を指定した場合
次のHTMLで引数に「取得要素の条件を指定」した場合を見ていこう。
<div>
<p>りんご</p>
<p>バナナ</p>
<a href="#">すいか</a>
<a href="#">パイナップル</a>
<p class="target">みかん</p>
<p>もも</p>
</div>
$(function(){
$(".target").prevAll("a").css("color","red")
});
この例では.prevAll("a")
とする事で、指定要素より前の兄弟要素がaタグ
の場合のみ取得するという条件を指定する事になり、この場合<a href="#">すいか</a>
と<a href="#">パイナップル</a>
が条件にマッチすて赤色に変わる事になる。
CodePebで実際の挙動を見てみよう
See the Pen jquery-prev by stand4u (@stand4u) on CodePen.
さらに範囲を指定したい場合は.prevUntil()
というメソッドがあり、詳しくはこちらを参考にどうぞ。
フロントエンドスキルをもっと早く・簡単にマスターしたい方へ!
JavaScriptやCSS・Sassなどフロントエンド学習は、初心者が「独学」で完全マスターするには半年以上かかり、相当根気よくやらないと挫折してしまうか、ライバルに出遅れてしまう…。
短期間でフロントエンド・WEBデザインをマスターするには?
私の経験だが、手軽なオンラインスクールを利用した方が圧倒的に早かった。独学だと「何からどこまで勉強すれば良いかわからない」ものを、これだけ学習すればOKというポイントをおさえた教科書で学習しながら、わからない点を質問し放題なので、多少の出費は必要だが2ヶ月程度でサクッと学べたので逆に経済的だった!(実際に私がオンラインスクールを受講して体感)
では「オススメはどのスクール?」とよく聞かれるのだが、たった1つのおすすめスクールがある訳でなく、その人によって最適なスクールが違う。
- 学習スタイルが自分に合っているか?
- 低価格でコスパの良い学習料金か?
- 講師に質問しやすい環境か?
- 無料体験できるスクールか?
数あるスクールの中から、実際に受講してわかった事や現役プロならでは目線で厳選・比較したこちらの記事「現役プロ比較!短期 「WEBデザインスクール12校」おすすめランキング!」を参考に自分に合ったスクールを探そう↓
jQuery「.prev() / .prevAll」で直前の兄弟要素を取得する方法のまとめ
以上が、jQueryで「.prev() / .prevAll」で直前の兄弟要素を取得する方法でした。
その他のjQueryメソッドについて確認したい方は、jQueryメソッドを一覧で解説したこちらの記事を確認しておこう!
※当記事の掲載内容は執筆現在の個人の見解・調査によるもので、動作・サービス等を保証するものではありません。最新情報は各公式サイトでご確認頂き、購入・契約・データ作成等はご自身の判断・責任でお願いします。 免責事項
関連記事
jQuery「append / appendTo」で要素内の末尾にHTMLを挿入する
jQuery「text()」でテキストを取得・変更する
jQuery「reverse」で配列の順番を逆にする方法
jQuery「.get()」で jQueryオブジェクトからDOM要素を取得する方法
jQuery「wrap」で要素を指定のタグで囲う
Swiper V8の使い方「レスポンシブ等の具体例」とオプション解説
jQuery「unwrap」で指定要素を囲むタグを削除する方法
jQuery「replaceWith / replaceAll」で指定要素を別の要素に置き換える
Jqueryでクロスフェードスライドショーの作り方(デザイナーでも出来る自作編)
jQuery「.show( )/.fadeIn()」で指定要素をフェードインで表示する方法
サイト内検索
新着記事
- YouTubeより詳しく!まとめて学べる『WEBデザイン動画講座』
- Figmaの背景切り抜きプラグイン『Remove BG』のAPI Key取得方法と使い方
- WEBデザイン動画講座のご紹介【お得な割引アリ】
- WixでWEBデザイナーが「ポートフォリオサイト」を作ってみた!
- WEBデザインツールの比較!初心者におすすめは?Figma Photoshop Xd Illustrator
- CodeCampGATE(コードキャンプゲート)とは?転職・就職先と評判
- コードキャンプの「Webデザイン・Webデザイン副業コース」を卒業生が解説!
- テックアカデミー「はじめての副業コース」卒業生が内容を解説!
- PHPの独学!挫折しないおすすめ勉強方法!
- 16インチMacbook Proで使える100Wモバイルバッテリー Zendure SuperTankレビュー
- [体験談] CodeCamp(コードキャンプ)で挫折する理由!
- テックアカデミー「受講した感想・評判」学習内容の総まとめ!
- Photoshop 超リアルな商品写真の鏡面反射の作り方
- デイトラの評判は?詳細内容とメリット・デメリットを解説
- CSSだけ超簡単!画像トリミングできる 「object-fit」 の使い方
- コードキャンプ 「無料体験・カウンセリング」を受講してみた!予約方法や内容の体験談
- デジタルハリウッドSTUDIO by LIGの評判
- PhotoshopでWEBデザインする基本の設定とテクニック
- テックアイエス評判は?現役プロがTECH I.S.を徹底調査!
- WEBデザインの練習・勉強をしながら「お金までもらえる」超おすすめの学習方法!
カテゴリー
タグリスト