jQuery「.has()」で指定の子要素を持つ親要素を選択


jQueryのメソッド「.has()」は、指定の子要素を持つ要素を選択するメソッド
今回は、jQueryで「指定の子要素をもつ要素を選択する」メソッド「.has()」について、その使い方をサンプルを交えて解説しよう。
目次
.has()の機能とは?
.has()
は、「指定の子要素を持つ親要素を選択する」事ができるメソッド。
※全く同じ機能の:has()
というセレクタもあるが、書き方が少し違うので、書式を混同しないように気をつけよう。
.has()の構文
「指定の子要素を持つ親要素を選択する」構文
$("セレクタ").has(セレクタ);
.has()の使い所
.has()
は指定の子要素をもつ「親要素」を選択するという点が使い所のポイント。つまり同じ要素であっても、特定の子要素をもつ場合と持たない場合がある要素が使い所である。
例えば次のようなナビゲーションで「<li>の子要素」にaタグを持つ場合とaタグを持たない場合で処理を分けたい場合などに有効だ。
<button>ボタン</button>
<ul class="nav">
<li><span>pageA</span></li>
<li><a href="page-b.html">pageB</a></li>
<li><a href="page-c.html"">pageC</a></li>
</ul>
$(function(){
$("button").on("click",function(){
$(".nav li").has("a").css("list-style-image","url('arrow.gif')");
});
});
この場合「aタグを子要素にもつli」はリストのスタイルで「矢印マーク」が付くようになる。
※ちなみに、同じ内容を:has()
セレクタを使って書くと次のようになる。
$(".nav li:has(a)").css("list-style-image","url('arrow.gif')");
フロントエンドスキルをもっと早く・簡単にマスターしたい方へ!
JavaScriptやCSS・Sassなどフロントエンド学習は、初心者が「独学」で完全マスターするには半年以上かかり、相当根気よくやらないと挫折してしまうか、ライバルに出遅れてしまう…。
短期間でフロントエンド・WEBデザインをマスターするには?
私の経験だが、手軽なオンラインスクールを利用した方が圧倒的に早かった。独学だと「何からどこまで勉強すれば良いかわからない」ものを、これだけ学習すればOKというポイントをおさえた教科書で学習しながら、わからない点を質問し放題なので、多少の出費は必要だが2ヶ月程度でサクッと学べたので逆に経済的だった!(実際に私がオンラインスクールを受講して体感)
では「オススメはどのスクール?」とよく聞かれるのだが、たった1つのおすすめスクールがある訳でなく、その人によって最適なスクールが違う。
- 学習スタイルが自分に合っているか?
- 低価格でコスパの良い学習料金か?
- 講師に質問しやすい環境か?
- 無料体験できるスクールか?
数あるスクールの中から、実際に受講してわかった事や現役プロならでは目線で厳選・比較したこちらの記事「現役プロ比較!短期 「WEBデザインスクール12校」おすすめランキング!」を参考に自分に合ったスクールを探そう↓
jQuery「.has()」で指定の子要素をもつ親要素を選択する方法のまとめ
以上が、jQueryで「.has()を使って、指定の子要素をもつ親要素を選択する」方法でした。
その他のjQueryメソッドについて確認したい方は、jQueryメソッドを一覧で解説したこちらの記事を確認しておこう!
※当記事の掲載内容は執筆現在の個人の見解・調査によるもので、動作・サービス等を保証するものではありません。最新情報は各公式サイトでご確認頂き、購入・契約・データ作成等はご自身の判断・責任でお願いします。 免責事項
関連記事

jQuery「prop」でプロパティの値を取得/設定

jQuery「.children() / .find()」で子要素を取得する方法

jQuery「makeArray」でオブジェクトを配列に変換する方法

jQueryの全セレクタのまとめ「完全マスター辞典!」

Jqueryでクロスフェードスライドショーの作り方(デザイナーでも出来る自作編)

jQuery「wrapAll」で複数の要素を指定のタグで囲う

jQuery「insertBefore」でHTMLを「指定要素の直前」に移動する

jQuery「.hide( )/.fadeOut()」で指定要素をフェードアウト非表示にする方法

videoタグの使い方とJavaScriptでオリジナルコントローラーを自作する方法

jQuery「length」で要素の数を取得する方法
サイト内検索
新着記事
- 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デザインの練習・勉強をしながら「お金までもらえる」超おすすめの学習方法!
カテゴリー
タグリスト