Сортировщик стола - зачистка зебры

Я использую этот сортировщик стола с зачисткой зебры. Я работаю сортировки с опциями выпадающего меню. У меня есть две проблемы с этим.

1) У меня есть строки, окрашенные в серый и белый цвета поочередно. Но у меня есть несколько специальных рядов с всегда серым цветом.

предположим, что если это нормальный случай, у меня будет серый, белый, серый порядок.

Теперь предположим, что белый ряд в вышеприведенном виде - это особый ряд, о котором я говорю. тогда это будет серый. так что теперь у нас есть три серых ряда вместо серо-белого серого.

Есть ли какой-нибудь способ, которым зебра-виджет может со знанием дела заметить, что, поскольку предыдущий является специальной строкой (всегда серой), он должен сделать текущую строку белым.

1 ответ

Рассмотрим следующий код ( http://jsfiddle.net/cqN5W/):

var tables = document.getElementsByTagName("table");
var i;
for (i in tables) {
    if (tables.hasOwnProperty(i) && typeof tables[i] === "object") {
        var rows = tables[i].getElementsByTagName("tr");
        var counter = 0;
        var j;
        for (j in rows) {
            if (rows.hasOwnProperty(j)) {
                if (rows[j].className.indexOf("gray") === -1) {
                    counter++;
                }
                if (counter % 2) {
                    rows[j].className += " gray";
                }
            }
        }
    }
}

Он будет помнить, какие строки были явно помечены как "серые", и будет учитывать их в своей окраске.

Другие вопросы по тегам