1. ホーム
  2. javascript

[解決済み] jQueryで要素のクラスリストを取得する

2022-03-14 12:21:39

質問

jQueryで、ある要素に割り当てられているすべてのクラスをループしたり、配列に代入したりする方法はありますか?

<div class="Lorem ipsum dolor_spec sit amet">Hello World!</div>

上記の "dolor_spec" のように "special" クラスを探すことになります。 hasClass()を使うことができるのは知っていますが、実際のクラス名はその時にわかるとは限りません。

どのように解決するのですか?

を使用することができます。 document.getElementById('divId').className.split(/\s+/); を使用すると、クラス名の配列が得られます。

そして、反復して必要なものを見つけることができます。

var classList = document.getElementById('divId').className.split(/\s+/);
for (var i = 0; i < classList.length; i++) {
    if (classList[i] === 'someClass') {
        //do something
    }
}

jQueryはここではあまり役に立ちませんが...。

var classList = $('#divId').attr('class').split(/\s+/);
$.each(classList, function(index, item) {
    if (item === 'someClass') {
        //do something
    }
});