0

重点是else位,我正在添加一个 div $('<div id="content" class="span4"></div>').appendTo('.new');,我需要检查我是否已经添加了 3 个 div,如果是,则添加一个新的$('<div class="row-fluid new"></div>').insertAfter($row);然后重新开始

$(".navMore li a").on("click", function() {
    var $el = $(this);
    $('#content').removeAttr('id');
    var $row = $el.closest('.row-fluid');
    if($row.next('.new').length){
        $('<div id="content" class="span4"></div>').appendTo('.new');
    }
    else {
         $('<div class="row-fluid new"></div>').insertAfter($row);
         $('<div id="content" class="span4"></div>').appendTo('.new');
    }
});
4

2 回答 2

1

我会使用模数(Operators/Modulus.htm">http://www.java2s.com/Tutorial/JavaScript/0040_Operators/Modulus.htm)做这样的事情:

$(".navMore li a").on("click", function() {
    var $el = $(this);
    $('#content').removeAttr('id');
    var $row = $el.closest('.row-fluid');

    var count = $('.new').find('span4').length;

    if (count % 3 == 0)
        $('<div class="row-fluid new"></div>').insertAfter($row);

    if($row.next('.new').length){
        $('<div id="content" class="span4"></div>').appendTo('.new');
    }
    else {
         $('<div class="row-fluid new"></div>').insertAfter($row);
         $('<div id="content" class="span4"></div>').appendTo('.new');
    }
});

这很粗糙,可能需要一些按摩,但我认为这就是你要找的。

于 2013-01-29T23:11:33.300 回答
0

用了这个:

$(".navMore li a").on("click", function() {
var $el = $(this);
$('#content').removeAttr('id');
var $row = $el.closest('.row-fluid');
var $rowNew = $row.next('.new');

if ($rowNew.children().length >= 3) {
        $('<div class="row-fluid new"></div>').insertAfter($row);
}

if($row.next('.new').length){
        $('<div id="content" class="span4"></div>').appendTo('.new');
}
else {
        $('<div class="row-fluid new"></div>').insertAfter($row);
        $('<div id="content" class="span4"></div>').appendTo('.new');
}
});
于 2013-01-30T00:05:11.990 回答