JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

Vanilla JavaScriptで要素からクラスを削除する方法|classList.remove()の基本と実践例

HTML要素からクラスを削除するには、JavaScriptのclassListプロパティが提供するremove()メソッドを使います。すでに「要素にクラスを追加する方法」の記事を読んだことがあれば、削除もまったく同じ仕組みを逆方向に使うだけだとすぐに理解できるでしょう。

まずはclassList.remove()の基本的な構文を確認し、そのあとで実際のコード例を見ていきます。

基本の構文

var element = document.querySelector("selector")
element.classList.remove("class")

このコードでは、まずquerySelector()を使って、指定したセレクター名(タグ名・クラス名など任意のCSSセレクター)に一致するページ内の最初のHTML要素を取得し、変数に格納しています。

続いて、その要素オブジェクトに対してclassList.remove()を呼び出し、引数として削除したいクラス名を指定します。複数のクラスを一度に外したい場合は、element.classList.remove("class1", "class2")のようにカンマ区切りで複数渡すことも可能です。

classList.remove()の実践例

クラスを削除するには、当然ながらクラスが付与された要素が必要です。では、どのクラスを削除してみましょうか?

説明をわかりやすくするため、今あなたが読んでいるこの段落にはitalicというクラスを付けてあります。ご覧のとおり、文字が斜体になっていますね。

それでは、学んだばかりのclassList.remove()のテクニックを使って、この段落の斜体スタイルを解除してみましょう。

var firstParagraph = document.querySelector(".italic")
firstParagraph.classList.remove("italic")

実行結果は以下のとおりです。

Vanilla JavaScriptで要素からクラスを削除する方法|classList.remove()の基本と実践例

補足:italicクラスはサイトのCSSスタイルシートで以下のように定義されているため、このように動作します。

.italic {
  font-style: italic;
}

参考リソース

  1. JavaScriptでクリックした要素にアクティブクラスを追加する方法

    Webページのボタンやタブメニューなどでは、現在選択されている要素を視覚的に強調表示したいケースがよくあります。JavaScriptを使えば、クリックされた要素に「active」クラスを動的に追加し、それまでアクティブだった要素からクラスを外すことで、この処理を簡単に実装できます。実装のポイント基本的な流れは以下のとおりです。querySelectorAll() ですべてのボタン要素を取得する各ボタンに addEventListener() でクリックイベントを登録するクリック時に、既存の「active」クラスを持つ要素からクラスを削除するクリックされた要素に「active」クラスを追加するサ

  2. JavaScriptで要素からクラス名を削除する方法【classList.remove()の使い方】

    JavaScriptでHTML要素からクラス名(className)を削除するには、classList.remove()メソッドを使うのが最もシンプルで確実な方法です。このメソッドを使えば、対象の要素から指定したクラスを動的に取り除くことができ、ボタンのクリックなどユーザーの操作に応じてスタイルを切り替える際に非常に便利です。 サンプルコード 以下は、「Remove Class」ボタンをクリックすると、DIV要素からクラス名が削除される例です。 <!DOCTYPE html> <html> <head> <meta name="viewpor