Основано на ответе Энтони, но перефразировано в одну строку (в основном):
function fixStripes() {
$('table tr').removeClass('odd even')
.filter(':even').addClass('even').end()
.filter(':odd').addClass('odd');
}
$("table").bind("sort", fixStripes);
Вызовы JQuery могут быть «связаны», как указано выше, используя такие операции, как filter()
, чтобы ограничить выбранные элементы, и .end()
, чтобы «сбросить» до последнего выбора. Другими словами, каждый .end()
«отменяет» предыдущий .filter()
. Финал .end()
пропущен, так как после этого ничего не поделаешь.