Col/Colgroup

Это еще один псот ненависти к IE, и родился он из первой же задачи на новом проекте. Смысл задачи в том что надо сделать скроллер у таблицы, тоесть есть табличка в которой 10 столбиков но показывать надо только 3 и есть кнопочка вперед/назад которая меняет видимые столбики. Ну на мой любимый затык с математикой и крайними случаями у меня ушло всего два часа :( FAIL! А вот на то чтобы заставить исчезать столбики целых два дня.

Как обычно я решил использовать самый современные технологии, например тэг COL для управления колонками, казалось бы что тут такого страшного, все его поддерживают, да не все могут скрыть, ну да ладно в IE8 работает и этого достаточно. Набросал скриптик на jquery вроде такого


$("#myTbl")
    .find("col")
    .css({visibility:"collapse"})
    .slice(firstVisible, firstVisible + columns)
    .css({visibility:""})

я решил что все уже позади, но не тут то было. Во-первых jquery не может различить видимые и невидимые колонки, о чем я оставил камент на странице описания селектора :visible , но похоже разработчики посчитали что это баг репорт и удалили его. Во-вторых чертов IE8 хоть и умеет прятать колонки не может их правильно отрисовать после этого, получаеться что текст всех скрытых колонок отображаеться под текстом первой видимой в несколько слоев, это легко убрать всего лишь нажав ctrl+A, но сами понимаете — это не выход.

Результатом всех этих мучений стало то, что пришлось итерироваться по всем ячейкам таблицы и скрывать неугодные.

3 Комментарии “Col/Colgroup

  1. :) как все запущено :) до коле осел будет портить жизнь честным разработчикам? ;)

  2. Где доступны? Кому доступны? Не слышал такого.

Комментарии закрыты