2

我有以下基本 HTML:

<div class="row-wrapper">
  <div class="box">...</div>
  <div class="box">...</div>
</div>

...并且我需要为.foo已经拥有该类的内部 DIV分配一个附加类.box(当然保留.box该类)。

我需要一种方法来检测内部何时有 2 个 DIV.row-wrapper

知道我怎么能做到这一点吗?

我尝试阅读.length方法的 jQuery API 文档,但对于我的 jQuery 知识来说它有点太复杂了。

我也读过一个类似的论坛,但他们没有解释如何定义项目的数量。

任何帮助是极大的赞赏。

4

1 回答 1

5
// If there are 2 or more children 
if($('.row-wrapper').children('.box').length >= 2){
    // add a class
    $('.row-wrapper .box').addClass("foo");
}

像上面这样的东西应该可以工作。

编辑:由于wirey建议可能不止一个.row-wrapper- 这是一个有效的观点,我们可以做这样的事情:

// Loop through each .row-wrapper
$(".row-wrapper").each(function(){
    // If there are 2 or more children
    if($(this).children('.box').length >= 2){
        // Find .box elements within $(this), and add a class.
        $(this).find('.box').addClass('foo');
    }
});

Jared 提供的 JSFiddle:http: //jsfiddle.net/zqyKn/

于 2012-07-17T20:48:02.620 回答