Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   получить ширину блоков (https://javascript.ru/forum/misc/51079-poluchit-shirinu-blokov.html)

vladislav.blinov 23.10.2014 16:49

получить ширину блоков
 
Всем привет!
есть меню, в нём 10 пунктов и каждый с разной шириной.
мне нужно сделать что то на подобии карусели но адаптивную под разные размеры экранов. Т.е. чем меньше экран тем меньше пунктов меню отображать.
вот такая логика у меня получилась:
var widthCountElement = 0;
var widthMenu = 0;
$("div#menu .ButtonMenuSite").width(function (i, width) {//получаем индекс и ширину элемента
     widthCountElement += width;//складываем ширину элементов
     if(widthCountElement > $(window).width()){//проверяем вмещаются ли все элементы на экране
          for(k = 1; k < i; k++){//создаём цикл чтобы вернуться на один элемент назад и обрезать меню
               widthMenu += $(this).width(); //получаем общую ширину элементов которые могут поместиться на экране 
               return $("div#menu").width(widthMenu);//обрезаем меню 
          }
     }
});


Подскажите как мне получить переменную width.

рони 23.10.2014 17:23

vladislav.blinov,
может так ?
var widthMenu = 0;
$("div#menu .ButtonMenuSite").width(function (i, width) {//получаем индекс и ширину элемента
     widthMenu += width;//складываем ширину элементов
     if(widthMenu < $(window).width()){//проверяем вмещаются ли все элементы на экране
           $("div#menu").width(widthMenu)
          } ;
     return width
});


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