ユーザーが付けた可能性のある[タグ]システムで要素にラベルを付け、タグの数(要素が持つクラスの数で定義)をカウントしたい場合、これをどのように達成しますか?
これは、タグの数ですべての要素を確認しようとする場合に役立ちます。(これは他の構造によって実現できる可能性がありますが、この方法で要素タグのみを参照する場合)
Jqueryには.hasClass()がありますが、.classCount()のようなものはありますか
ユーザーが付けた可能性のある[タグ]システムで要素にラベルを付け、タグの数(要素が持つクラスの数で定義)をカウントしたい場合、これをどのように達成しますか?
これは、タグの数ですべての要素を確認しようとする場合に役立ちます。(これは他の構造によって実現できる可能性がありますが、この方法で要素タグのみを参照する場合)
Jqueryには.hasClass()がありますが、.classCount()のようなものはありますか
あなたはそれを作成することができます...
$.fn.classCount = function() {
return $.grep(this.attr("class").split(/\s+/), $.trim).length;
};
jQueryがない場合は、次を使用できます...
var classLength = element.classList.length;
jQueryがなく、古いブラウザをサポートする必要がある場合は、 ...
var classes = element.className.replace(/^\s+|\s+$/g, "").split(/\s+/);
var classLength = classes[0].length ? classes.length : 0;
HTML5を使用している場合は、classList属性を使用できます。例えば
$("#someElementId").classList.length
次の場合は2を返します。
<div id="someElementId" class="stinky cheese"></div>
$(element).attr('class').split(/\s+/).length