Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   ширина столбцов таблицы после загрузки (https://javascript.ru/forum/events/8457-shirina-stolbcov-tablicy-posle-zagruzki.html)

bis 26.03.2010 18:21

ширина столбцов таблицы после загрузки
 
Доброго времени суток, уважаемая публика.
Суть в следующем. Имеется таблица, в которую ajax'ом подгружаются данные, и после того как в таблицу подгружены данные, ширина столбцов изменяется.
Как зафиксировать ширину столбцов таблицы после того как страница загрузилась и не менялась при подгрузке данных.
На опере и IE(причем ослик очень медленно отрабатывает) прокатила следующая штука, вызываю AlignTables
Код:

function getElementWidth(element) {       
        if(element.clientWidth) {
                return element.clientWidth;
        }
        else {
                if(element.offsetWidth) {
                        return element.offsetWidth;
                }
        }
        return 10;
}

document.getElementsByClassName = function(cl) {
        var retnode = [];
        var myclass = new RegExp('\\b'+cl+'\\b');
        var elem = this.getElementsByTagName('*');
        for (var i = 0; i < elem.length; i++) {
                var classes = elem[i].className;
                if (myclass.test(classes)) retnode.push(elem[i]);
        }
        return retnode;
};

function AlignTables()
{
    var tables = document.getElementsByClassName('tbline');
        for(i=0; i<tables.length; i++) {
          var t = tables[i];
          var cells = t.tBodies[0].rows[0].cells;         
            for (var j = 0; j < cells.length; j++) {
                cells[j].style.width = getElementWidth(cells[j]);
            }
      t.style.tableLayout = 'fixed';             
        }       
}

Firefox при установке fixed, плюет на установленную ранее ширину столбца и делает все столбцы одинаковыми.
Может кто что подскажет или сталкивался ранее?

e1f 26.03.2010 18:35

Цитата:

Как зафиксировать ширину столбцов таблицы после того как страница загрузилась и не менялась при подгрузке данных.
Попробуйте добавить <COL>, и указать table-layout: fixed.


Часовой пояс GMT +3, время: 23:15.