2020.09.22

jQuery

jQueryで親要素を取得(parent・parents・closest)

デモページはこちら

jQueryで親要素(親要素の親要素である先祖要素を含む)を取得するメソッドのまとめです。対象要素の親要素を取得するparent、対象要素の親要素と先祖要素を全て取得するparents、対象要素の親要素と先祖要素から最初にマッチした要素を取得するclosestです。

以下のhtmlの構造でテストします。

<div class="contents" id="page01">
	<p class="title">タイトルデモ01</p>
	<div class="text">
		<p class="text01">ダミーテキスト01</p>
		<p class="text02">ダミーテキスト02</p>
		<p class="text03">ダミーテキスト03</p>
	</div>
	<div class="image">
		<img src="images/img01.jpg" alt="">
		<img src="images/img02.jpg" alt="">
		<img src="images/img03.jpg" alt="">
		<img src="images/img04.jpg" alt="">
	</div>
	<p class="title">タイトルデモ02</p>
	<div class="text">
		<p class="text04">ダミーテキスト04</p>
		<p class="text05">ダミーテキスト05</p>
	</div>
</div>

親要素を取得できる各メソッドを利用してconsole.logで出力します。$('.text05').closest('div')は対象のdivタグがクラス名textのdivタグとクラス名contentsのdivタグ2つありますが、最初にマッチしたクラス名textのdivタグのみ取得するのがポイントです。

$(function() {
	var result01 = $('.text03').parent().prev();
	var result02 = $('.text04').parents('.contents');
	var result03 = $('.text05').closest('div').prev();

	console.log(result01.text());
	console.log(result02.attr('id'));
	console.log(result03.text());
});

//result01
タイトルデモ01
//result02
page01
//result03
タイトルデモ02

関連記事

2020.10.10

jQuery

jQueryで要素を表示・非表示(show・hide・toggle・fadeIn・fadeOut・fadeToggle・slideDown・slideUp・slideToggle)

デモページはこちら jQueryで要素を表示・非表示にするメソッドのまとめです。対象要素を表示するshow、対象要素を非表示にするhide、対象要素の表示・非表…

2021.01.30

jQuery

ヘッダー固定時のページ内リンクスムーススクロール

デモページはこちら ページ内リンクへの移動をスムーススクロールで実装します。ヘッダーは上部に固定しています。以下のhtml構造でテストします。 ページ内リンクの…

2020.09.21

jQuery

jQueryで兄弟要素を取得(next・nextAll・prev・prevAll・siblings)

デモページはこちら jQueryで兄弟要素(同階層の要素)を取得するメソッドのまとめです。対象要素の直後の要素を取得するnext、対象要素の直後以降の要素を全て…

2020.11.08

jQuery

プラグインを利用せずにjQueryで実装する高さ揃え

デモページはこちら jquery.matchHeight.jsのようなプラグインを利用せず、jQueryのみでhtml要素の高さ揃えを実装します。プラグイン利用…

2020.09.23

jQuery

ページ最下部でトップへ戻るボタンを表示

デモページはこちら ユーザーがページ最下部までスクロールしたタイミングで、トップへ戻るボタンをフェードインで表示します。ボタンをクリックまたはページ最下部よりも…

上に戻る