Comments 17
Я правильно понимаю, что расширяться будут не только элементы списка, но и сам контрол на странице?
Можно пример увидеть?
Можно пример увидеть?
Да, будет расширяться именно контрол, в этом была и суть бага — выпадающий список options обрезался по ширине контрола.
С примером сложнее, так как негде выложить, использовал этот метод на одном из внутренних проектов.
С примером сложнее, так как негде выложить, использовал этот метод на одном из внутренних проектов.
А если у меня все контролы специально подогнаны по ширине, чтобы в таблицу помещались, тогда что делать? Верстка разъезжаться будет.
Все зависит от верстки, если справа от контролов достаточно места для самого длинного value в option, то все будет отлично. Но тут я согласен, решение не универсальное. Можно попробовать динамически изменять «position» на событии mouseover и возвращать в исходное состояние после того как фокус потерян.
Тогда смысл оставлять место справа под контрол, чтобы он потом туда расширился?
Если бы у меня было место, я бы сразу сделал пошире селект и не парился с вашими скриптами.
Если бы у меня было место, я бы сразу сделал пошире селект и не парился с вашими скриптами.
Можно использовать position: absolute;
Попробуйте копировать селект, хитро прятать часть копии, чтоб были видны только открытые options, но видны были полностью. А так расширенный селект может поломать верстку.
Спасибо, можно будет поиграться на досуге. Но, самое идеально решение, я думаю будет вместо обычного select использовать что-нибудь кастомное, например select на div'ах, но так как изначально везде на проекте использовался обычный селект, и как часто это происходит, нужен был срочный fix, получилось такое решение. Начало есть, можно развивать :)
Зашел в FF на вашу демку — select разъехался до неимоверных размеров.
А Вы удачливый — зашли как раз в то время как я уронил статика на несколько минут. Попробуйте повторить попытку, Вам понравится.
Да, теперь все ок. Единственное, что надо пару секунд подержать наведенный курсор мыши, чтобы увидеть полный текст. Можно попробовать отлавливать события клика или выделения и показывать полный текст в отдельном baloon. Однако ваш вариант самый быстрый, если не надо видеть полный текст всех значений одновременно.
В свою очередь существует еще отличная библиотека DHTML eXtensions, которая также умеет решать подобную проблему.
Может кто-то не знал о её существовании и возмет на заметку.
Может кто-то не знал о её существовании и возмет на заметку.
Sign up to leave a comment.
Побеждаем обрезанный текст в HTML select