и еще тогда до кучи один вопросик:
для выравнивания ячеек таблиц использую нечто вот такое:
сначала рисуем в браузере таблицу class=main. после чего:
/*находим все ТН таблицы, записываем в массив ширину каждого*/
var i=0;
var col = new Array();
$(".main").find("th").each(function(){
head = $(".main").find('th:eq('+i+')');
col[i] = head.width();
i++;
});
/*рисуем фиксированный див, с таблицей (выполняет роль шапки)*/
$('#wrap').prepend("<div id='d1' style='position: fixed; '><table class='mainHead' width='700px'></table></div>");
$(".main").find('thead').clone(true).appendTo('.ma inHead');
for (j=0; j<i; j++){
$('.mainHead th:eq('+j+')').attr('width', col[j]+'px') //выставляем ширину для каждого TH новой таблицы
}
$(".main").find('thead').html(''); //грохаем заголовок у оригинала
на div id='d1' действует скрипт "сайдбар прилипала" (работает пока наоборот, но я с этим думаю разберусь)
все бы ничего, да только не выставляет браузер искомую ширину для таблицы-шапки.
скрипт - работает (смотрел google chromom) в DOM дереве в тегах атрибут 'width' записывается как надо. тока бестолку почему-то...
ширину у TH и ТD обоих таблиц смотрю Alertом, все записываю на бумажке, дважды проверяю. все отрабатывает ПРАВИЛЬНО, но без нужного мне эффекта.
Вопрос: ПОЧЕМУ? и КАК БЫТЬ?
пробовал ширину задавать таким образом:
$("<col width='"+col[j]+"px'>").appendTo('.mainHead');
то бишь вместо назначения ширины для ТН - рисовал <col>, но то ли <col> не действует на ТН, то ли причина в другом, но ситуация та же...
ps: да.. чуть не забыл, ширина у обоих таблиц (оригинала и клона) фиксированная и одинаковая - 700px
Последний раз редактировалось Le-mark43, 15.04.2012 в 16:52.
|