Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Не правильно определяет ширину <TD> (https://javascript.ru/forum/events/9980-ne-pravilno-opredelyaet-shirinu-td.html)

nonsense 14.06.2010 11:54

Не правильно определяет ширину <TD>
 
Доброе время суток.

Napisan skript , kotoryj probegajet po odnoj <table>, uznajet "width" eje <td>, i ustanavlivajet takoj zhe v drugoj <table>, no po4emu do on nepravilno opredeliajet shirinu.

window.onscroll = function  () {

if(scrollY>400)
{   
    $('top_line').style.display = '';
    pos = findPos($('real_table'));
    $('top_line').style.left = pos[0]-scrollX+'px';
    
    div = $('top_line').getChildren();
    
    div.each(function(el) {
        div1 = el.getChildren();
        div1.each(function(el1) {
            div2 = el1.getChildren();
            div2.each(function(el2) {
                el2.width = $(el2.className).offsetWidth;
            });
        });
    });
    
   // alert('Ne tiani tak bystro, bolno zhe!');
}
else
{
   $('top_line').style.display = 'none'; 
}


P.S.
izviniajush iz-za latinicy, na nout ese ne nakleil russkij shrift.

Gvozd 14.06.2010 12:11

есть куча сервисов для транслитерации. и судя по русскоязычному названию темы, ты таки имеешь возможност ь пистаь по русские
просьба в дальнейшем использовать их для своих постов
а по теме: в jQuery, вообще-то есть метод width

nonsense 14.06.2010 12:42

Это mootools. Width возвращает (an empty string) . offsetWidth возвращает неправильное значение. Может дело в том что я пытаюсь взять ширину верхнего <TD> очень длинной таблицы.

P.S. На кирилице очень медленно печатаю в слепую.

Gvozd 14.06.2010 12:48

Цитата:

Сообщение от nonsense
P.S. На кирилице очень медленно печатаю в слепую.

http://translit.ru/ в помощь

nonsense 14.06.2010 12:57

Спасибо, очень классная вешь. Но может все-таки есть какие-нибудь соображения по теме :)

Gvozd 14.06.2010 13:04

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

nonsense 14.06.2010 14:36

Вложений: 1
Ширина задается правильно, толко вот видимо получается не правильно. Так как пытаюс получить ширину у <ТД> с неуказанной шириной. Может есть есе алтернативные спотобы точного получения ширины.
На рисунке верхняя строчка управлиаэтсиа яваскриптом, но никак не могу получит точные значения ширины <тд> в таблице под ней


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