我知道我不能用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>