Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Получить массив width


Автор: MoLeX 21.5.2010, 08:22
Привет. Есть код (в нем не известно названия полей, id тоже нельзя назначить. есть только название класса у дива)
Код

<div class="hDivBox">
   <table cellspacing="0" cellpadding="0">
   <thead>
   <tr>
      <th align="left" abbr="d_registr" axis="col0" style="display: table-cell;" class="">
         <div style="text-align: left; width: 134px;" class="">Зарегистрирован</div>
      </th>
      
      <th align="left" abbr="d_turned" axis="col1" class="">
         <div style="text-align: left; width: 150px;" class="">Обратился</div>
      </th>
      
<!-- неизвестно сколько будет -->
      
      <th align="left" axis="col4" class="">
         <div style="text-align: left; width: 110px;" class="sasc">Пол</div>
      </th>
      
      <th align="left" axis="col5">
         <div style="text-align: left; width: 134px;">Дата рождения</div>
      </th>
   </tr>
   </thead>
   </table>
</div>



Не могу вытащить ширину. Надо что бы получилось следующее
Код

134, 150, 110, 134

Автор: ksnk 21.5.2010, 09:54
а сама таблица гарантированно не будет расширять дизайн?
Код

var widths=[];
$(".hDivBox th>div").each(function(){
    widths.push(this.style.width)
})
alert(widths);

Автор: MoLeX 21.5.2010, 10:48
ksnk, и да и нет. Просто появляется горизонтальная прокрутка. Это мне нужно для грида, чтобы можно сохранять настройки пользователя.


ksnk, +1 то что доктор прописал

Автор: ksnk 22.5.2010, 18:07
Код

alert($(".hDivBox th>div").map(function(){
   return parseInt(this.style.width);
}).get().join(", "))

покороче получится...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)