选择具有相同类的多个div

时间:2014-10-10 09:02:36

标签: javascript jquery jquery-selectors

我有一个HTML结构:

<div class="className"></div>
<div class="className"></div>
...
<div class="className"></div>

我试图用jQuery选择这些元素。为此,我想知道是否可以在循环中定位这些项目,其中Ndivs的数量。在第一个循环中,我想要定位第一个div,在第二个循环中定位第二个div等等......

for (var i = 0; i < N; i++) {
    $(".className")...
};

此外,可以通过jQuery知道具有相同类的divs的数量吗?

8 个答案:

答案 0 :(得分:6)

$(...)表示法返回一个类似数组的对象,这意味着您可以通过索引引用特定元素:

$(".className")[i]...

然而值得注意的是,jQuery有几个自己的循环方法,包括each()map(),在这种情况下可以使用它而不是本地for循环:< / p>

$(".className").each(function() {
    var current_element = $(this);
});

jQuery对象实现了JavaScript的length属性,因此您可以使用它来计算匹配元素的数量:

var number_of_divs = $(".className").length;

为了满足您的问题要求:

var elems = $('.className'),
    N = elems.length;

for (var i = 0; i < N; i++)
    elems[i]...

答案 1 :(得分:1)

试试这个,

$('.className').each(function(){
    // your logic
});

知道总数没有。具有相同类别的div,

var totalDivs = $('.className').length;

答案 2 :(得分:0)

你可以知道长度

$('.className').length;

尺寸大小();

$('.className').size(); // Deprecated since jQuery 1.8 though 

或者只使用每个

$('.className').each(function(){  // code    });

答案 3 :(得分:0)

要循环播放,您可以使用.each()

$(".className").each(function(){});

要获得总数,您只需使用属性length

var numOfDiv = $(".className").length;

答案 4 :(得分:0)

你需要知道每个()函数。

   $(".className").each(function(Integer index, Element element){
.......
   });

http://api.jquery.com/each/

答案 5 :(得分:0)

$.each($('.className'),function(index,value){
console.log(value);
})
console.log('LENGTH : '+$('.className').length);

答案 6 :(得分:0)

运行$('.className')时,实际上是在创建一个包含该特定类的所有元素的列表,包含在jQuery对象中。您可以在此对象上运行.each()来迭代所有元素,如下所示:

$('.className').each(function (index, element) {
  // this refers to the current element here (not wrapped in a jquery object)

});

答案 7 :(得分:0)

使用此代码:

var elems = $('.className');
N = elems.length; // this gives no. of divs
for (var i = 0; i < N; i++)
{
    $(elems[i])...  // by using this you can point to each div with same class name
}