Для больших таблиц удобно подсвечивать столбец и строку, на которой находится курсор.
 Вся сложность заключается в производительности. Если таблица состоит из более 20 столбцов и около тысячи строк, обычные решения нахождения и подсветки на js нужных ячеек оказываются очень тормозными.
Предлагаю довольно шустрое решение, но без js, к сожалению, не обойтись. Для подсветки строки, на которой находится курсор, используем css2:
tr:hover { background: #eee !important; }
IE6 подавится, ну и пусть! Обратный отсчет пошел. Если все-таки шестой осел греет душу, придется приделать экспрешн-костылик.
Чтобы подсветить столбец, нужно на js определить, на каком столбце находится курсор. Т.к. ячеек очень много, вешаем один обработчик mousemove на таблицу вместо mouseover у каждой ячейки:
$('table').mousemove(e) {
...
var column_num = $(e.target).prevAll().size();
...
}
Осталось закрасить все ячейки столбца. Для этого при верстке таблицы, нужно добавить тэги col и задать ширину столбцам и самой таблице (намного ускорит рендеринг). Важно, чтобы количество тэгов col совпадало с количеством столбцов. Закрашивая тэг col, закрашивается весь столбец:
$('table').find('col:eq('+column_num+')').addClass('column-hover');
mitka.bloger.by
|