我知道我不能用CSS这样做,但我想知道,使用jQuery,如果可以定位具有特定类的元素的每第n次迭代.所以如果我想选择每四个.media元素或每三个.media项目.
例如:
<ul> <li class="element"></li> <li class="element"></li> <li class="element media"></li> <li class="element media"></li> <li class="element"></li> <li class="element media"></li> <li class="element"></li> <li class="element media"></li> </ul> $('.layout-option--b .media').each(function() { $(this).filter(function(index,element) { return index % 4; }).addClass("fourth"); });
解决方法
是的,您可以使用filter(),并使用%检查元素索引.因为我从0开始,你可以使用i 1.
$('li.media').filter(function(i) { return (i + 1) % 4 == 0 }).css('color','red')
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <ul> <li class="element">Li</li> <li class="element">Li</li> <li class="element media">Li</li> <li class="element media">Li</li> <li class="element">Li</li> <li class="element media">Li</li> <li class="element">Li</li> <li class="element media">Li</li> </ul>