1

わかりました私は以下を持っています:

<div class="row">
    <div class="test">02/12/2013</div>
    <div class="test">03/12/2013</div>
    <div class="test">04/12/2013</div>
    <div class="test">05/12/2013</div>
    <div class="class1">06/12/2013</div>
    <div class="test"><07/12/2013/div>
    <div class="test">08/12/2013</div>
    <div class="test">09/12/2013</div>
    <div class="test">10/12/2013</div>
</div>
<div class="row">
    <div class="test">11/12/2013</div>
    <div class="test">12/12/2013</div>
    <div class="test">13/12/2013</div>
    <div class="test">14/12/2013</div>
    <div class="test">15/12/2013</div>
    <div class="test">16/12/2013</div>
    <div class="class2">17/12/2013</div>
    <div class="test">18/12/2013</div>
    <div class="test">19/12/2013</div>
    <div class="test">20/12/2013</div>
    <div class="test">21/12/2013</div>
</div>

この場合、class1 と class2 は angularJS を使用して動的に追加されるため、2 つの div class1 class2 の間に test のクラスを持つ div の数をカウントするにはどうすればよいですか?

4

2 に答える 2

3

このようなことを意味しますか?

$(function(){
    var $class1 = $('.class1');
    var $class2 = $('.class2');
    var $afterClass1 = $class1.nextAll('.test');
    var $beforeClass2 = $class2.prevAll('.test');

    var count = $afterClass1.length + $beforeClass2.length;

    $('.count').html(count);    
});

http://jsfiddle.net/SAsty/

編集: より良い視覚化 http://jsfiddle.net/SAsty/3/

編集2:
次のようにします:

var $allBetween =  $afterClass1.add($beforeClass2);
$allBetween.addClass('between');
于 2013-08-09T18:42:28.157 に答える
0

たぶん、このようなものですか?

$divs = $('.row div');
var count = $divs.index($('.class2')) - $divs.index($('.class1')) - 1;
于 2013-08-09T18:43:51.787 に答える