Untuk menambahkan dan menghilangkan beberapa class pada sebuah HTML element dengan menggunakan javaScript, kita cukup menggunakan metode classList.add() dan classList.remove() seperti biasa. Metode add() dan remove() di sini dapat menerima satu atau lebih parameter dalam hal ini nama class.

Add and Remove Single class

Berikut ini contoh menambahkan dan menghilangkan satu class pada HTML element:

Add Single class

Diasumsikan kita akan menambahkan class .bg-red pada element dengan id #aho

document.getElementById('aho').classList.add('bg-red');

Remove Single class

Diasumsikan kita akan menghilangkan class .bg-red dari element dengan id #aho

document.getElementById('aho').classList.remove('bg-red');

CodePen

See the Pen Add and Remove Single class by Ramdan Aho (@ahonerd) on CodePen.

Add and Remove Multiple classes

Berikut ini contoh menambahkan dan menghilangkan beberapa class pada HTML element:

Add Multiple classes

Diasumsikan kita akan menambahkan class .txt-red dan .bg-blue pada element dengan id #aho

document.getElementById('aho').classList.add('txt-red', 'bg-blue');

Remove Multiple classes

Diasumsikan kita akan menghilangkan class .txt-red dan .bg-blue dari element dengan id #aho

document.getElementById('aho').classList.remove('txt-red', 'bg-blue');

CodePen

See the Pen Add and Remove Multiple classes by Ramdan Aho (@ahonerd) on CodePen.

Adding and Removing classes in Multiple elements

Untuk menambahkan dan menghilangkan beberapa class di beberapa HTML element kita dapat melakukannya dengan looping atau iterasi pada setiap element.

Contoh HTML code

<div id="demo">
  <div class="aho">coba 1</div>
  <div class="aho">coba 2</div>
  <div class="aho">coba 3</div>
  <div>
    <button onClick="add()">add</button>
    <button onClick="remove()">remove</button>
  </div>
</div>

Contoh CSS code

.txt-red {
  color: crimson;
}

.bg-blue {
  background-color: cornflowerblue;
}

Contoh JS code

Pada contoh berikut, kita menggunakan metode document.querySelectorAll untuk memilih semua element di DOM yang memiliki class .aho, kemudian kita menggunakan array.forEach untuk melakukan iterasi dari setiap element.

const aho = document.querySelectorAll('.aho');

function add() {
  aho.forEach((elm) => {
    elm.classList.add('txt-red', 'bg-blue');
  })
}

function remove() {
  aho.forEach((elm) => {
    elm.classList.remove('txt-red', 'bg-blue');
  })
}

Selain menggunakan array.forEach seperti pada contoh di atas, kita juga dapat menggunakan metode looping yang lainnya seperti for loop atau for...of.

Dengan Metode for

const aho = document.querySelectorAll('.aho');

function add() {
  for (let index = 0; index < aho.length; index++) {
    const elm = aho[index];
    elm.classList.add('txt-red', 'bg-blue');
  }
}

Dengan Metode for...of

const aho = document.querySelectorAll('.aho');

function add() {
  for (const elm of aho) {
    elm.classList.add('txt-red', 'bg-blue');
  }
}

CodePen

Conclusion

Dengan metode classList.add() dan classList.remove() kita dapat menambahkan atau menghilangkan satu atau lebih class. Akan tetapi metode ini akan mengasilkan error apabila parameter berupa string kosong atau string yang mengandung spasi.

Loading comments...