※当サイトではアフィリエイト広告を利用しています

JavaScript

JavaScriptでクラスを操作する方法

JavaScriptでクラスを操作する方法

今回はJavaScriptでクラスを操作する方法についてまとめたいと思います。

クラスの操作では下記のようなメソッドがあります。

  • Element.classList.add(‘クラス名’):
    引数に指定したクラスを要素に追加する。
  • Element.classList.remove(‘クラス名’):
    引数に指定したクラスを要素から外す。
  • Element.classList.toggle(‘クラス名’):
    引数に指定したクラスを要素に付け外しする。

ではそれぞれもう少し詳しくみていきましょう。

1:Element.classList.add(‘クラス名’)

Element.classList.add()は、引数に指定したクラスを要素に追加するメソッドです。

Element.classList.add('クラス名');

 

こんなデモを作ってみました。

See the Pen
ZEeyjvL
by notebook (@orange-notebook)
on CodePen.

青いボタンがあり、クリックするとactiveクラスが付与されます。
activeクラスが付くと、背景色が赤くなり赤いボタンになる仕組みです。

HTML

 <a href="#" class="btn">Click me!</a>

btnクラスのついたaタグでボタンを作っています。

CSS

.btn {
  text-decoration: none;
  color: white;
  padding: 1em 2.5em;
  background-color: blue;
  letter-spacing: 1px;
}

.btn.active {
  background: red;
}

activeクラスが付与されたときに、backgroundが赤くなるよう設定されています。

JavaScript

const btn = document.querySelector('.btn');

btn.addEventListener('click', function() {
  this.classList.add('active');
});

btn変数の中にボタン要素を入れ、
ボタンにクリックイベントでクリックするとactiveクラスが付与されるようにします。

2:Element.classList.remove(‘クラス名’)

Element.classList.remove()は、引数に指定したクラスを要素に外すメソッドです。

Element.classList.remove('クラス名');

 

こんなデモを作ってみました。

See the Pen
VwpWByG
by notebook (@orange-notebook)
on CodePen.

先ほどの例とほぼ同じですが、
今回はデフォルトでactiveクラスがついていて、ボタンが赤になっています。

ボタンをクリックすると、activeクラスが外れて青いボタンになるよう設定しています。

HTML

<a href="#" class="btn active">Click me!</a>

今回はbtnクラスとactiveクラスが付いた状態です。

CSS

.btn {
  text-decoration: none;
  color: white;
  padding: 1em 2.5em;
  background-color: blue;
  letter-spacing: 1px;
}

.btn.active {
  background: red;
}

CSSは1つ目のデモと同じです。

JavaScript

const btn = document.querySelector('.btn');

btn.addEventListener('click', function() {
  this.classList.remove('active');
});

btn変数の中にボタン要素を入れ、
ボタンにクリックイベントでクリックするとactiveクラスが外れるようになっています。

3:Element.classList.toggle(‘クラス名’)

Element.classList.toggle()は、
引数に指定したクラスを要素から付け外しするメソッドです。

Element.classList.toggle('クラス名');

 

こんなデモを作ってみました。

See the Pen
vYxZadQ
by notebook (@orange-notebook)
on CodePen.

1番目の例と同様、最初ボタンにactiveクラスはついておらず、青いボタンです。
activeクラスが付くことで赤いボタンになります。

今回はtoggleでクラスの付け外しをするので、
クリックしてactiveクラスが付いていなければactiveクラスを付与し、
activeクラスがすでに付いている場合は外してくれます。

1番目と2番目の例では、
クリックでクラスを追加して終わりか、クラスを外して終わりでしたが、
今回はクリックするたびにボタンの色が変わります。

HTML

<a href="#" class="btn">Click me!</a>

デフォルトではactiveクラスはついていません。

CSS

.btn {
  text-decoration: none;
  color: white;
  padding: 1em 2.5em;
  background-color: blue;
  letter-spacing: 1px;
}

.btn.active {
  background: red;
}

CSSは1番目と2番目の例と共通です。

JavaScript

const btn = document.querySelector('.btn');

btn.addEventListener('click', function() {
  this.classList.toggle('active');
});

btn変数の中にボタン要素を入れ、ボタンにクリックイベントでクリックすると
activeクラスが付け外しされるようになっています。

おわりに

いかがでしたでしょうか。
デザインを変更する際に、クラスを付け外しすることは多いですよね。

最後までお読みいただき、ありがとうございました!

JavaScriptでHTML要素を選択する方法
JavaScriptでHTML要素を選択する方法今回はJavaScriptからHTML要素を選択する方法について簡単にまとめてみたいと思います。...