尝试更好的方法来测试某个值的倍数的索引值,在本例中假设为10。以下内容显然不太理想。寻找更好的方法。(目前有心理障碍。)
$('.element').each(function(i){
if (i==9 || i==19 || i == 29 || etc... ){
alert('condition met');
}
});发布于 2015-04-09 12:06:07
$('#element').each(function(i){
if (i % 9 == 0){
alert('condition met');
}
});注意: ID选择器将只选择一个元素,所以我猜这是问题中的一个拼写错误
如果所有元素都是同级元素,还可以查看nth-child selector
$('.element:nth-child(9n)').each(function(i){
alert('')
});工作代码段:
//just to populate
$('.element').html(function(i) {
return i + 1;
});
//using index
$('.element').each(function(i) {
if (i > 0 && i % 9 == 0) {
$(this).css('color', 'red')
}
});
$('.element:nth-child(9n)').each(function(i) {
$(this).css('background-color', 'green')
});<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
<div class="element"></div>
https://stackoverflow.com/questions/29529542
复制相似问题