测试索引值是否等于某个数字的倍数

Test if index value equals multiples of a certain number

本文关键字:数字 于某个 索引值 是否 测试      更新时间:2023-09-26

试图找到更好的方法来测试某个值的倍数的索引值,在这种情况下比如10。以下情况显然并不理想。寻找更好的方法。(目前有心理障碍。)

$('.element').each(function(i){
   if (i==9 || i==19 || i == 29 || etc... ){
      alert('condition met');
   }
});

使用余数运算符

$('#element').each(function(i){
   if (i % 9 == 0){
      alert('condition met');
   }
});

注意:ID选择器将只选择一个元素,所以我猜这是问题中的拼写错误


如果所有元素都是兄弟,也可以查看第n个子选择器

$('.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>