今回は、JavaScriptで「クラスを管理する方法」を見ていきます。
CSSについて忘れてしまっている方もいらっしゃると思いますので、ぜひHTMLとCSSで簡単なサイトを作成して一緒に操作しながら学習してください。
className
「className」プロパティは、クラス属性値を取得します。
クラス属性値を取得
HTML <div class="sample"></div>
let nameClass = document.querySelector('div');
console.log(nameClass.className);
sample
クラス属性値を変更
let nameClass = document.querySelector('div');
nameClass.className += ' newsample';
console.log(nameClass.className);
newsample
属性値を追加する場合は、「nameClass.className += ‘ newsample’;」と書きます。
classList
「classList」プロパティは、属性値を参照、追加、削除することが出来ます。
以下のメソッドを伴って使用します。
| メソッド | 意味 |
|---|---|
| add | クラスを追加 |
| remove | クラスを削除 |
| toggle | クラスが存在する場合は削除 なければ追加 |
| replace | クラスを置き換える |
| contains | クラスが含まれているか確認 true、falseで返す |
add
let nameClass = document.querySelector('div');
nameClass.classList.add('newsample');
console.log(nameClass);
div.sample.newsample
属性値に、「newsample」が追加されました。
remove
nameClass.classList.remove('sample');
console.log(nameClass);
<div class="newsample"></div>
属性値「sample」が削除されました。
toggle
HTML <div class="sample newsample"></div>
let nameClass = document.querySelector('div');
nameClass.classList.toggle('sample');
console.log(nameClass);
<div class="newsample"></div>
属性値「sample」が削除されました。
let nameClass = document.querySelector('div');
nameClass.classList.toggle('sample2');
console.log(nameClass);
<div class="sample newsample sample2"></div>
属性値「sample2」は存在していなかったので、追加されました。
replace
let nameClass = document.querySelector('div');
nameClass.classList.replace('sample', 'sample1');
console.log(nameClass);
<div class="sample1 newsample"></div>
属性値「sample」が「sample1」に書き換えられました。
「classList.replace(変更する属性値, 新しい属性値)」で記述します。
contains
HTML <div class="sample newsample"></div>
let nameClass = document.querySelector('div');
console.log(nameClass.classList.contains('sample'));
console.log(nameClass.classList.contains('sample1'));
true
false
属性値「sample」は存在するので「true」が、「sample1」は存在しないので「false」が返ります。
スタイルの設定
element.style
「element.style」は、スタイルプロパティに値を設定します。
let element = document.getElementById('sector1');
element.style.color = 'red';

プロパティ名は、キャメルケースで記述します。
floatは記述方法が違うので注意してください。
margin-top = marginTop
text-align = textAlign
float-left = cssFloatLeft
element.style.color = null;
「null」を指定するとリセットすることが出来ます。
element.style.fontSize = '20px';
サイズを指定する時は、「20px」と単位まで記述する必要があります。
getComputedStyle
「getComputedStyle」メソッドは、スタイルを取得します。
このメソッドは読み取り専用です。
let styleType = getComputedStyle(element);
console.log('color' + styleType.color);
console.log('font-size' + styleType.fontSize);
color:rgb(255, 0, 0)
font-size:20px
あとがき
今回も沢山のメソッドを見てきましたが、主に「classList」と「element.style」の使い方をしっかりと覚えておいてください。
これから頻繁に目にすることがあるメソッドになりますので、この機会にしっかりと学習しておきましょう。
今回も最後までお読み頂きありがとうございました。


