jQueryでクラス操作:addClass、removeClass、toggleClassなど

2024-04-02

jQueryでクラス名を変更する方法

addClass()メソッドは、要素に1つまたは複数のクラスを追加します。

<div class="box"></div>
$( ".box" ).addClass( "active" ); // "active" クラスを追加

例:クリックで要素にactiveクラスを追加

<button>ボタン</button>

<script>
$( "button" ).click(function() {
  $( ".box" ).addClass( "active" );
});
</script>
<div class="box active"></div>
$( ".box" ).removeClass( "active" ); // "active" クラスを削除
<button>ボタン</button>

<script>
$( "button" ).click(function() {
  $( ".box" ).removeClass( "active" );
});
</script>

toggleClass()メソッドは、要素にクラスが存在する場合は削除し、存在しない場合は追加します。

<div class="box"></div>
$( ".box" ).toggleClass( "active" ); // "active" クラスが存在する場合は削除、存在しない場合は追加
<button>ボタン</button>

<script>
$( "button" ).click(function() {
  $( ".box" ).toggleClass( "active" );
});
</script>

attr()メソッドは、要素の属性値を取得または設定できます。クラス名も属性の一つなので、attr()メソッドを使って変更できます。

<div class="box"></div>
$( ".box" ).attr( "class", "active" ); // クラス名を "active" に設定

例:要素のクラス名を動的に設定

<select>
  <option value="box">box</option>
  <option value="circle">circle</option>
</select>

<div class="box"></div>

<script>
$( "select" ).change(function() {
  var className = $( this ).val();
  $( ".box" ).attr( "class", className );
});
</script>
<div class="box"></div>
$( ".box" ).css( "class", "active" ); // クラス名を "active" に設定
<select>
  <option value="box">box</option>
  <option value="circle">circle</option>
</select>

<div class="box"></div>

<script>
$( "select" ).change(function() {
  var className = $( this ).val();
  $( ".box" ).css( "class", className );
});
</script>

jQueryを使えば、様々な方法で要素のクラス名を変更できます。状況に応じて適切な方法を選択してください。

補足

  • 上記の例では、単一の要素に対してクラス名を変更していますが、複数の要素に対して同時に変更することも可能です。
  • クラス名にスペースが含まれている場合は、クォーテーションで囲む必要があります。



<button>ボタン</button>

<div class="box"></div>

<script>
$( "button" ).click(function() {
  $( ".box" ).addClass( "active" );
});
</script>
<button>ボタン</button>

<div class="box active"></div>

<script>
$( "button" ).click(function() {
  $( ".box" ).removeClass( "active" );
});
</script>
<button>ボタン</button>

<div class="box"></div>

<script>
$( "button" ).click(function() {
  $( ".box" ).toggleClass( "active" );
});
</script>
<select>
  <option value="box">box</option>
  <option value="circle">circle</option>
</select>

<div class="box"></div>

<script>
$( "select" ).change(function() {
  var className = $( this ).val();
  $( ".box" ).attr( "class", className );
});
</script>
<select>
  <option value="box">box</option>
  <option value="circle">circle</option>
</select>

<div class="box"></div>

<script>
$( "select" ).change(function() {
  var className = $( this ).val();
  $( ".box" ).css( "class", className );
});
</script>

上記のサンプルコードは、jQueryを使って要素のクラス名を変更する方法を理解するのに役立ちます。




jQuery以外でクラス名を変更する方法

classListプロパティは、要素のクラス名のリストを取得または設定できます。

<div class="box"></div>
var element = document.querySelector( ".box" );

// クラス名を追加
element.classList.add( "active" );

// クラス名を削除
element.classList.remove( "active" );

// クラス名が存在するかどうかを確認
element.classList.contains( "active" );

// クラス名をすべて削除
element.classList.remove();
<button>ボタン</button>

<div class="box"></div>

<script>
var button = document.querySelector( "button" );
var box = document.querySelector( ".box" );

button.addEventListener( "click", function() {
  box.classList.add( "active" );
});
</script>
<button>ボタン</button>

<div class="box active"></div>

<script>
var button = document.querySelector( "button" );
var box = document.querySelector( ".box" );

button.addEventListener( "click", function() {
  box.classList.remove( "active" );
});
</script>
<button>ボタン</button>

<div class="box"></div>

<script>
var button = document.querySelector( "button" );
var box = document.querySelector( ".box" );

button.addEventListener( "click", function() {
  box.classList.toggle( "active" );
});
</script>
<div class="box"></div>
var element = document.querySelector( ".box" );

// クラス名を設定
element.className = "active";

// クラス名を取得
var className = element.className;

例:クリックで要素のクラス名を変更

<button>ボタン</button>

<div class="box"></div>

<script>
var button = document.querySelector( "button" );
var box = document.querySelector( ".box" );

button.addEventListener( "click", function() {
  box.className = "active";
});
</script>
<div class="box"></div>
var element = document.querySelector( ".box" );

// クラス名を設定
element.setAttribute( "class", "active" );

// クラス名を取得
var className = element.getAttribute( "class" );
<button>ボタン</button>

<div class="box"></div>

<script>
var button = document.querySelector( "button" );
var box = document.querySelector( ".box" );

button.addEventListener( "click", function() {
  box.setAttribute( "class", "active" );
});
</script>

jquery css


background-image プロパティを使って画像を重ねる

この方法は、画像を絶対配置または相対配置にして、重ねる位置を調整する方法です。HTML:CSS:この例では、position: absolute; で画像を絶対配置し、top と left プロパティで重ねる位置を調整しています。z-index プロパティで、どの画像を前面に表示するかを指定しています。...


【初心者向け】jQueryで簡単!選択されたラジオボタンを取得する方法

jQueryを使って、どのラジオボタンが選択されているかを取得するには、いくつかの方法があります。方法1: :checked セレクタを使うこれは最も簡単な方法です。name属性が同じラジオボタングループの中から、選択されているラジオボタンのみを取得できます。...


【完全ガイド】A4サイズ印刷用のHTMLページ作成:初心者でも簡単にできる!

まず、以下のファイルを用意します。index. html:HTMLファイルstyle. css:CSSファイルindex. htmlファイルには、以下のコードを記述します。このコードは、基本的なHTMLページの構造を定義しています。このコードは、印刷時に以下の設定を適用します。...


要素を水平方向または垂直方向に中央揃えする方法:Twitter Bootstrap 編

Twitter Bootstrap は、Web サイトやアプリケーションの開発を容易にする人気の CSS フレームワークです。 Bootstrap には、グリッドシステム、ボタン、フォーム、ナビゲーションバーなど、さまざまなコンポーネントが含まれています。...


ReactJSでオンラインツールを使ってHTML文字列をJSXに変換する

最も簡単な方法は、dangerouslySetInnerHTMLプロパティを使うことです。この方法を使うと、HTML文字列をそのままJSXに変換することができます。ただし、dangerouslySetInnerHTMLを使う場合は、XSS攻撃などのセキュリティリスクに注意する必要があります。...