速報

AWS SDK for pandasのIceberg書き込みにSQL注入|Glueの変更権限も点検

CATEGORY

【jQuery】hasClassで要素にclassが存在するか確認する

※本ページのリンクにはプロモーションが含まれています。

hasClassで要素にclassが存在するか確認する

目次

本記事では、jQueryのhasClassを使って要素に指定したclassが存在するか確認する方法をご紹介しています。

jQueryでclassの存在を判定して処理をしたいんだけど、良い方法ないかな?

上記の疑問にお答えします。

では、解説していきます。

スポンサーリンク

jQueryを読み込む

jQueryを使用するために、本体ファイルを読み込みます。ここでは公式サイトにて公開されているを利用します。

CDNはContents Delivery Network(コンテンツ・デリバリー・ネットワーク)の略称で、ネットワークを経由してウェブコンテンツを利用するサービスを指します。ネットワークに接続されている機器であれば利用することができます。

jQueryのライブラリは以下のタグで読み込むことができます。2021年11月19日時点の最新バージョンです。

<script src="https://code.jquery.com/jquery-3.6.0.js"></script>

上記の読み込みが完了したら次項に進みます。

hasClassとは

jQueryのメソッドにhasClassというものがあります。hasClassは、ある要素に対して引数に指定したclassが存在するかを確認し、存在した場合はtrue(真)を、存在しない場合はfalse(偽)を返すメソッドです。

下記のように使用します。

$('selector').hasClass('className')

上記例では、に指定した要素がclassNameというclassを持っていればtrue(真)を、存在しなければfalse(偽)を返します。classを指定する際は、addClassやremoveClassと同様に「.」を記述する必要はありません。

もし複数のclassの存在を確認したい場合は、半角スペースを開け、class名を追記します。

$('selector').hasClass('class1 class2 class3 ...')

hasClassは真偽値を返すメソッドなので、classが存在する・しないといった判定が必要な条件分岐でよく使われます。

スポンサーリンク

hasClassで条件分岐をする

hasClassはclassが存在するかを確認するメソッドです。存在すれば処理Aを実行し、存在しなければ処理Bを実行するという使い方ができます。

if( $('selector').hasClass('className') ) {
    $('selector').removeClass('className');
} else {
    $('selector').addClass('className');
}

簡単なサンプルですが、下記デモのような使い方をすることが可能です。

See the Pen Untitled by ryohei (@intotheprogram) on CodePen.

上記のデモでは、ボタンをクリックしてclassの付け外しの処理を実行しています。onでクリックイベントを取得した後に処理を行っています。HTMLとjQueryは下記のものを使用しています。

HTML

<button>Click!</button>
<div></div>

jQuery

$('button').on('click', function(){
    if( $('div').hasClass('blue') ) {
        $('div').removeClass('blue');
    } else {
        $('div').addClass('blue');
    }
});

最後に

私がこの記事を公開した頃は、jQueryの1.12.4を使用していましたが、2021年11月現在は3.6.0までバージョンが上がりました。検索してくれた皆さんが求めているのは最新の情報だと思いますので、過去記事を見返してなるべく最新の情報を載せておくように努めないといけませんね。がんばろう…

以上、jQueryのhasClassで要素にclassが存在するか確認する方法のご紹介でした!

この記事を書いた人

Ryohei

Webエンジニア / アプリ開発者 / 技術ブログ運営者

福岡のWeb制作会社に勤務するWebエンジニアです。10年以上にわたりWeb制作・開発に携わり、ヒアリングや進行管理から、コーディング、CMSの構築、システム開発、サーバーの構築・保守・運用まで、Webサイト制作の工程を幅広く担当しています。Webサイトは、これまでに100以上の構築・保守を手がけてきました。

個人でもWebサイトの制作・改修やWebアプリの開発・運用を行い、AIを活用した開発にも取り組んでいます。近年はWebセキュリティにも注力しています。

2015年から技術メディア「Into the Program」を運営し、実務や開発で得た知識をもとに、プログラミングの実装方法やWebサイトの運用・セキュリティ情報を発信しています。

主な分野
Webサイト構築・保守・運用 / HTML/CSS / JavaScript / PHP / WordPress / サーバー構築・保守・運用 / アプリ開発 / セキュリティ対策
資格・試験合格
情報セキュリティマネジメント試験
基本情報技術者試験
AWS認定ソリューションアーキテクト アソシエイト
PHP8技術者認定ウィザード
メディア運営
2015年〜

記事の作成・更新について

セキュリティ記事は、ベンダーの公式アドバイザリやCVE・JVNなどの一次情報を参照し、出典と情報確認日を記載します。実環境での検証を行った場合は、その環境と確認範囲を明示します。重要な追加情報や誤りを把握した場合は、内容を確認して追記・訂正します。

関連する記事

おすすめの書籍

キーワードから探す

スポンサーリンク

セレクタ

CSSのスタイルやJavaScriptの処理を当てる対象の要素を指定するための書き方。「.class」「#id」など。

詳しく見る

CDN

世界各地のサーバーにWebサイトのファイルを複製して置き、利用者に近いサーバーから配信する仕組み。表示の高速化や負荷の分散に使う。

詳しく見る