jQueryFormStyler icon indicating copy to clipboard operation
jQueryFormStyler copied to clipboard

Ширина выпадающего списка

Open killlinuxkill opened this issue 7 years ago • 2 comments

Вычисляя ширину выпадающего списка, еще можно учитывать если в списке прокрутка. Полоса прокрутки съедает (в моем случае) 20пкс и текст переносит на новую строку. Я это решил проверяя общую высоту всех элементов в списке и фактическую высоту списка. Если высота списка меньше высоты всех элементов, прибавлял к максимальной ширине 20пкс.
// определяем самый широкий пункт селекта var liWidthInner = 0, liWidth = 0, liAllHeight = 0; li.css({'display': 'inline-block'}); li.each(function() { var l = $(this); liAllHeight += l.outerHeight(); if (l.innerWidth() > liWidthInner) { liWidthInner = l.innerWidth(); liWidth = l.width(); } }); liWidthInner = ul.outerHeight() < liAllHeight ? liWidthInner + 20 : liWidthInner ;

killlinuxkill avatar Jan 18 '18 12:01 killlinuxkill

В разных операционных системах ширина полосы прокрутки может быть разной, поэтому неправильно ставить ее строго 20 пикселей.

Dimox avatar Jan 18 '18 13:01 Dimox

Да. Это ширина к примеру. Я не в курсе просто как можно вычислить ширину полосы прокрутки.

killlinuxkill avatar Jan 18 '18 13:01 killlinuxkill