Justique
@Justique

Почему jquery width() не считает ширину li?

Добрый день, использую плагин jQuery form styler, а конкретно для стилизации селектов.
Возникла такая проблема что ширина выпадающего списка ставится в 0

Путём просмотра кода плагина выяснилось что ширина блока дропдауна устнаваливается исходя из максимальной ширины элемента `li` но при выводе в консоль самой ширины везде 0
// определяем самый широкий пункт селекта
						var liWidthInner = 0,
								liWidth = 0;
						li.css({'display': 'inline-block'});
						li.each(function() {
							
							var l = $(this);
							console.log(l.innerWidth())
							if (l.innerWidth() > liWidthInner) {
								liWidthInner = l.innerWidth();
								liWidth = l.width();
							}
						});
						li.css({'display': ''});

						// подстраиваем ширину свернутого селекта в зависимости
						// от ширины плейсхолдера или самого широкого пункта
						if (divText.is('.placeholder') && (divText.width() > liWidthInner)) {
							divText.width(divText.width());
						} else {
							var selClone = selectbox.clone().appendTo('body').width('auto');
							var selCloneWidth = selClone.outerWidth();
							selClone.remove();
							if (selCloneWidth == selectbox.outerWidth()) {
								divText.width(liWidth);
							}
						}
						
						// подстраиваем ширину выпадающего списка в зависимости от самого широкого пункта
						if (liWidthInner > selectbox.width()) dropdown.width(liWidthInner);
  • Вопрос задан
  • 203 просмотра
Пригласить эксперта
Ответы на вопрос 1
politon
@politon
HTML5,CSS3,JS,PHP,SQL,API,canvas,animation...
21 век на дворе. Почему не использовать возможности css без лишних плагинов ;)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы