javascript 指定したクラスを使用しているかを確認する
- 作成日 2020.10.10
- 更新日 2022.07.07
- javascript
- javascript
javascriptで、classList.containsを使用して、指定したクラスを使用しているかを確認するサンプルコードを記述してます。
環境
- OS windows10 pro 64bit
- Apache 2.4.43
- ブラウザ chrome 103.0.5060.66
classList.contains使い方
classList.containsを使用すれば、指定したクラスを使用しているかを確認することが可能です。
<h2 id="foo" class="badge badge-primary"></h2>
<script>
// 要素を取得
let elm = document.getElementById("foo");
// 判定
let result = elm.classList.contains('badge');
console.log(result); // true
result = elm.classList.contains('noclass');
console.log(result); // false
</script>
また、javascript部はdocument.getElementByIdを省略して「id名」のみで記述することも可能です。
// 判定
let result = foo.classList.contains('badge');
console.log(result); // true
result = foo.classList.contains('noclass');
console.log(result); // false
「querySelector」を使用して、「matches」で判定することも可能です。
// 要素を取得
let elm = document.querySelector("#foo");
// 判定
let result = elm.matches('.badge');
console.log(result); // true
result = elm.matches('.noclass');
console.log(result); // false
パフォーマンスは「classList.contains」の方が少しいいです。
実行回数:1000000回 関数名:contains 実行時間:72.7(ms)
実行回数:1000000回 関数名:matches 実行時間:106(ms)
サンプルコード
以下は、
「判定」ボタンをクリックすると、指定した「html」タグに、指定したクラスが使用されているかを判定して結果を表示する
サンプルコードとなります。
※cssには「bootstrap material」を使用してます。
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8">
<title>mebeeサンプル</title>
<!-- MDB -->
<link href="https://cdnjs.cloudflare.com/ajax/libs/mdb-ui-kit/4.2.0/mdb.min.css" rel="stylesheet" />
</head>
<body>
<div class="container text-center w-50" style="margin-top:150px">
<h2><span id="foo" class="badge badge-primary">判定結果</span></h2>
<button onclick="hoge();" type="button" class="btn btn-danger">
判定
</button>
</div>
<script>
function hoge() {
// 要素を取得
let elm = document.getElementById("foo");
// 判定
let result = elm.classList.contains('badge');
// 結果表示
elm.textContent = result;
}
</script>
</body>
</html>
使用されているのでtrueが表示されていることが確認できます。
javascript部はdocument.getElementByIdを省略できます。
function hoge() { foo.textContent = foo.classList.contains('badge') }
-
前の記事
C# 文字列を日付型に変換する 2020.10.10
-
次の記事
javascript 現在の曜日を簡単に取得する 2020.10.10
コメントを書く