您好我有一组元素。他们在一个元素上有几个类。
<div class="color1 chaire"> </div>
<div class="color11 chaire"> </div>
<div class="color1 chaire"> </div>
<div class="color12 chaire"> </div>
<div class="color2 chaire"> </div>
<div class="color2 chaire"> </div>
<div class="color2 chaire"> </div>
<div class="color2 chaire"> </div>
<div class="color23 chaire"> </div>
<div class="color23 chaire"> </div>
<div class="color3 chaire"> </div>
<div class="color3 chaire"> </div>
<div class="color3 chaire"> </div>
<div class="color3 chaire"> </div>
<div class="color4 chaire"> </div>
我想计算每个 colorX div的数量是多少?
我需要像以下结构:
color1 : 2
color2 : 4
color3 : 4
color4 : 1
color11 : 1
color12 : 1
color23 : 2
我写代码:
function countvalues(a) {
var b = {}, i = a.length, j;
while( i-- ) {
j = b[a[i]];
b[a[i]] = j ? j+1 : 1;
}
return b;
}
var coalition = new Array();
var elements = $(".chaire").not(".notactive");
elements.each(function () {
var class = $(this).attr("class");
class = class.substring(0, class.indexOf(" "));
coalition.push(class);
});
b = countvalues(coalition);
也许有更容易的方法来做到这一点?
答案 0 :(得分:2)
这应该可以解决问题:
$('div[class^="color"]').length;
答案 1 :(得分:1)
$("div[class^=color]").size();