本記事では、jQueryでcssプロパティの値を取得・追加・変更する方法について分かりやすく解説しています。
JavaScriptの学習におすすめ参考書
改訂3版JavaScript本格入門 ~モダンスタイルによる基礎から現場での応用まで
先輩くん
10万部突破したJavaScriptの本が大幅増補改訂し7年ぶりに発売されたよ!
後輩ちゃん
最新の基本文法から、開発に欠かせない応用トピックまで学ぶことが出来るよ!
綺麗なコードが書けるようになる!
リーダブルコード-より良いコードを書くためのシンプルで実践的なテクニック
先輩くん
より良いコードを書きたい人におすすめの本だよ!
後輩ちゃん
10以上前の書籍ですが、内容は今でも役に立つものばかりです!
cssプロパティの操作
後輩ちゃん
先輩!jQueryでcssプロパティの操作方法を教えてください!
先輩くん
了解!cssプロパティの値を取得・追加・変更する方法を別々に紹介するね!
サンプルコード
先輩くん
以降の解説で使用しているサンプルコードを載せました。手を動かしながら確認したい方はこちらをお使いください!
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
</head>
<body>
<p style="font-size: 20px; font-weight: 700; color: #f00">SAMPLE</p>
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script src="index.js"></script>
</body>
</html>
cssプロパティの値を取得
cssプロパティの値を取得するには、css()メソッドを使います。基本的な使い方は以下のとおりです。
/* 一つのプロパティの値を取得 */
$('セレクタ').css('プロパティ名');
/* 複数のプロパティの値を取得 */
$('セレクタ').css(['プロパティ名', 'プロパティ名']);
先輩くん
cssプロパティの値を取得するサンプルコードを用意したので、動作確認してみましょう!
<p style="font-size: 20px; font-weight: 700; color: #f00">SAMPLE</p>
const val1 = $("p").css("font-size");
console.log(val1); // 20px
const val2 = $("p").css(["font-size", "font-weight"]);
console.log(val2); // {font-size: '20px', font-weight: '700'}
cssプロパティの追加・変更
先輩くん
cssプロパティの追加・変更は記述方法が同じだからまとめて紹介するね!
cssプロパティの追加・変更も、先ほど紹介したcss()メソッドを使用します。異なる点は、追加と変更では第二引数に追加・変更したい値を指定することです。基本的な使い方は以下のとおりです。
/* 一つのプロパティを追加・変更 */
$('セレクタ').css('プロパティ名', '値');
/* 複数のプロパティを追加・変更 */
$('セレクタ').css({
'プロパティ名': '値',
'プロパティ名': '値',
});
先輩くん
cssプロパティの追加・変更するサンプルコードを用意したので、動作確認してみましょう!
<p style="font-size: 20px; font-weight: 700; color: #f00">SAMPLE</p>
/* プロパティの追加 */
$("p").css("letter-spacing", "0.05em");
console.log($("p")); // <p style="font-size: 20px; font-weight: 700; color: rgb(255, 0, 0); letter-spacing: 0.05em;">SAMPLE</p>
/* プロパティの変更 */
$("p").css({
"font-size": "30px",
"font-weight": "400",
color: "#000",
});
console.log($("p")); // <p style="font-size: 30px; font-weight: 400; color: rgb(0, 0, 0); letter-spacing: 0.05em;">SAMPLE</p>