li 要素に追加されたクラスに応じてリストをフィルタリングする次のコードがあります。ゼブラ ストライプは、すべてのアイテムが表示されている場合は正常に機能しますが、フィルター処理を行ってリスト アイテムの 1 つが非表示になっていると、ゼブラ ストライプが同期しなくなります。これを回避する方法はありますか?
この投稿を確認しましたが、つまり、非表示の行を使用したjQueryテーブルゼブラストライピングが機能しませんでした
ありがとう。
//Filter
$("#local-clubs-list li:visible:even").addClass("even");
$('ul#filter a').click(function() {
$(this).css('outline','none');
$('ul#filter .current').removeClass('current');
$(this).parent().addClass('current');
var filterVal = $(this).text().toLowerCase().replace(' ','-');
$('ul#local-clubs-list li').each(function() {
if(!$(this).hasClass(filterVal)) {
$(this).fadeOut('normal').addClass('hidden');
} else {
$(this).fadeIn('slow').removeClass('hidden');
}
$("#local-clubs-list li").removeClass("even");
$("#local-clubs-list li:visible:nth-child(even)").addClass("even");
});
return false;
});
$('ul#filter a:eq(0)').trigger('click');
私がモミ虫で見ているのは
<li class="northern even">
<li class="northern">
<li class="north-dublin hidden even" style="display: none;">
<li class="northern">
<li class="northern even">
<li class="northern">
<li class="northern even">
<li class="northern">
<li class="northern even">