2021.03.14

jQuery

jQueryのcssメソッドで要素のCSSを取得・変更

デモページはこちら

jQueryのcssメソッドで要素のCSSを取得・変更します。以下のhtmlの構造でテストします。

<ul>
	<li>HTML・CSS</li>
	<li>Sass</li>
</ul>
<p class="title">最初の要素のCSSを変更</p>
<input type="button" class="btn01" value="1箇所変更">
<input type="button" class="btn02" value="2箇所変更"><br><br>
<p class="title">2番目の要素のCSSを取得して変更</p>
<input type="button" class="btn03" value="1箇所取得して1箇所変更">
<input type="button" class="btn04" value="2箇所取得して2箇所変更"><br><br>
<input type="button" class="btn05" value="リロードしてリセット">

まずCSSの変更です。対象の要素に設定されたCSS、または要素の持つ初期値のCSSをcssメソッドで変更します。
1箇所変更する場合は第一引数にプロパティ、第二引数に値を指定します。2箇所以上、複数変更する場合は{'プロパティ': '値', 'プロパティ': '値'}のように記述します。どちらも、プロパティと値の指定にはシングルクォーテーションが必要です。

$(function() {
	$('.btn01').on('click', function() {
		$('ul').children('li:first').css('font-weight', 'bold');
	});
	$('.btn02').on('click', function() {
		$('ul').children('li:first').css({'font-weight': 'bold', 'color': 'red'});
	});
});

次にCSSの取得です。対象の要素に設定されたCSSをcssメソッド取得し、if文で取得したCSSのプロパティの値と指定した値が一致した時に処理を実行します。
1箇所取得する場合は第一引数にプロパティを指定します。変数に格納した場合、変数にはプロパティに設定された値が入ります。2箇所以上、複数取得する場合は['プロパティ', 'プロパティ']のように記述します。複数取得して変数に格納した場合、変数名['プロパティ']のように記述すると、1つずつそのプロパティに設定された値が取り出せます。プロパティ名にハイフンが含まれない場合、変数名.プロパティのように記述しても値が取り出せます。
なお、cssメソッドでCSSを複数取得する記述法は、jQueryバージョン1.9以降で可能です。

$(function() {
	$('.btn03').on('click', function() {
		var result01 = $('ul').children('li:nth-child(2)');
		var state01 = $(result01).css('font-weight');
		if(state01 == '400') {
			$(result01).css('font-weight', 'bold');
		}

	});
	$('.btn04').on('click', function() {
		var result02 = $('ul').children('li:nth-child(2)');
		var state02 = $(result02).css(['font-weight', 'color']);
		if(state02['font-weight'] == '400' && state02.color == 'rgb(0, 0, 0)') {
			$(result02).css({'font-weight': 'bold', 'color': 'red'});
		}
	});
	$('.btn05').on('click', function() {
		location.reload();
	});
});

関連記事

2022.08.26

jQuery

jQueryで最初・最後の要素を取得(first・last)

jQueryのfirst・lastメソッドで最初・最後の要素を取得します。また、first・lastをセレクタとして使用します。以下のhtmlの構造で確認します…

2020.09.22

jQuery

jQueryで子孫要素を取得(children・find)

デモページはこちら jQueryで子孫要素(子要素と子要素の子要素である孫要素)を取得するメソッドのまとめです。対象要素の子要素を全て取得するchildren、…

2020.09.29

jQuery

PC表示でページの途中からスクロールに追従するナビゲーション

デモページはこちら PC表示の場合、ページの途中に配置したナビゲーションが画面の一番上に来たタイミングで固定され、スクロールに追従する動作を実装します。 ナビゲ…

2020.10.09

jQuery

jQueryのindexメソッドで要素の順番を取得、eqメソッドで要素の順番を指定

デモページはこちら jQueryのindexメソッドで要素の順番を取得、eqメソッドで要素の順番を指定してタブ切り替えを実装します。 以下のhtmlの構造でテス…

2020.11.08

jQuery

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

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

上に戻る