Мне нужно удалить все классы 'no-right-marg' на всех элементах #tips li. Затем мне нужно скрыть все эти элементы с классом идентификатора элемента clicked. Затем мне нужно проверить, какие элементы все еще отображаются, и добавить класс «no-right-marg» к каждому четвертому. Мой код ниже не работает. Пожалуйста, смотрите мой jsfiddle http://jsfiddle.net/VCZc4/2/Нужно добавить класс, но только если элемент виден
jQuery('#selector li').click(function() {
colour = '.' + jQuery(this).attr('id');
jQuery('#tips ' + colour).toggle();
jQuery(this).toggleClass('inactive');
jQuery('#tips li').removeClass('no-right-marg');
jQuery('#tips li:visible').each(function(index){
if(index %4===0){// if divisible by 4
jQuery(this).addClass('.no-right-marg');
}
});
});
HTML
<ul id="selector">
<li id="brown">button 1</a>
<li id="green">button 2</a>
<li id="blue">button 3</a>
<li id="orange">button 4</a>
</ul>
<ul id="tips">
<li class="brown">text</li>
<li class="orange">text</li>
<li class="blue">text</li>
<li class="blue no-right-marg">text</li>
<li class="blue">text</li>
<li class="orange">text</li>
<li class="blue">text</li>
<li class="blue no-right-marg">text</li>
<li class="green">text</li>
</ul>
спасибо, что выбрали это, он делает что-то, но не так! Он добавляет класс, но не к каждому четвертому элементу ... – Nicola
Итак, проверьте мою новую скрипку: http://jsfiddle.net/reygonzales/VCZc4/10/ Как и сэр Джонатан Рани, он индексируется нулями. Поэтому я добавил 1 к индексу перед применением оператора modulo. Как нас найти? –
вот и все! Спасибо! – Nicola