JavaScript querySelectorAllでclass名からnot指定も含めてHTML要素を取得する

環境
Google Chrome 111.0.5563.147
Windows 10 Home 64bit

書式
document.querySelectorAll(“.クラスA:not(.クラスB)");
HTML要素からclass名「クラスA」が付与されているHTML要素のうち「クラスB」が付与されていない要素を取得したい場合、
querySelectorAll()を使用します。
特定のclass名を否定(not指定)したhtml要素を取得します。

使用例

<!DOCTYPE html>
<html>
<body>

<div id="item1" class="tA">太郎</div>
<div id="item2" class="tB">山田</div>
<div id="item3" class="tA tC">吉田</div>
<br>
<button onclick="show()">表示</button>

<script>
function show() {
 // class名「tA」が付与されているHTML要素のうち「tB」が付与されていない
let target = document.querySelectorAll(".tA:not(.tB)");
  //要素1の出力
 console.log(target[0]);
 // 要素2の出力
 console.log(target[1]);
}
</script>

</body>
</html>

実行結果
「表示」ボタンを押すと、コンソール画面に下記メッセージを出力します。
<div id="item1″ class="tA">太郎</div>
<div id="item3″ class="tA tC">吉田</div>

JavaScript

Posted by arkgame