Pull to refresh

Comments 38

Делать реиспользуемый компонент и обращаться к нему по id — грубейшая ошибка и в стилях и в скриптах.


Писать атрибуты без кавычек можно, но не стоит, особенно классы — их нередко надо добавлять-убирать. Ну а раз один атрибут пишем с кавычками, то и остальные лучше тоже — чтобы не задумываться каждый раз.


Отступы в стилях поехали — где один пробел, а где один таб.


В скрипте неконсистентные кавычки, где одинарные, где двойные — причем в одной строке. Выберите один стиль и соблюдайте его (хинт: большинство выбирает одинарные).

спасибо за ваш комментарий, все учту! :)
В вашем случае получается, что каждый раз нужно описывать кастомный селект довольно сложно, почему бы не сделать тогда уж трансформацию стандартного в то, что вы описываете? И я бы порекомендовал использовать классы, вместо id, чтобы использовать селект несколько раз на странице.
кстати, да, на тот момент не задумался, что лучше сделать класс, буду исправляться, спасибо! :)
Велосипед, и боль у тех, кто отключил скрипты. Лучше делать стандартные select-ы, и преобразовывать их в кастомные при загрузке.
интересно, много таких умников в интернете, кто отключает скрипты и радуется неработающим сайтам?
UFO just landed and posted this here
а как отображается выпадающее меню когда в низу страницы расположен контрол или когда места не хватает т.к. маленький экран?
UFO just landed and posted this here
UFO just landed and posted this here

Хороший вариант, когда кстомный селект просто кладется рядом с существующим <select> (который хайдится) и просто меняет selected в нем, попутно триггря событие change. Да еще и слушает исходный <select> на предмет изменений <option> или value.

UFO just landed and posted this here

Иногда нужно, когда обычного селекта не хватает. Например селект с поиском или placeholder-ом.

UFO just landed and posted this here
UFO just landed and posted this here
Пишем свой select-список, используя jQuery

Заминусовал

Прям сборник антипаттернов всего в трех файлах.
Ну и в копилочку — нет управления с клавиатуры.
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
В работе встречал довольно старый проект cuSel, правда, он уже довольно давно заброшен.
С плюсов было то, что он брал существующие select-формы и перерабатывал их сам.
Подумайте над этим направлением, а не требовать создавать собственную верстку для HTML
Код, конечно, трешовый, но спасибо за то, что навели на мысль изобрести свой вариант этого велосипеда. По работе часто нужен кастомный селект, а тащить ради этого jqueryui ил другой плагин неохота.
Буду благодарен, если кто-то подскажет, какие требования и «фичи» необходимы для такого плагина.
конечно, трешовый, не буду спорить.
нужно подключить библиотеку jQuery и файл css, где описаны стили к соответствующим элементам.
Проблема тут не столько в jQuery и CSS. Основные минусы тут указали и не раз: невозможность повторного использования на одной странице, специфичная для данного плагина вёрстка, ну и неряшливое оформление кода.
Я, как и писал, начал баловаться с написанием своего велосипеда. У того, что сделал, логика такая:
  • класс присваивается нативному селекту
  • плагин оборачивает его блоком и в него же (после селекта) добавляет свой сгенерированный html
  • селект прячется
  • при выборе элементов в кастомном селекте, они применяются и к скрытому нативному

Плюсы следующие: возможность повторного использования, а так же при краше JS, остаётся нативный селект и ничего страшного не происходит. Из настроек пока добавил булевскую переменную, отвечающую за показ в кастомном меню disabled элементов.
UFO just landed and posted this here
А такой же пример для древовидного списка можно выложить?
С древовидным списком подобного не делал, но можно попробовать. В принципе, вы можете сделать лучше :)
Конечно в теории каждый может сделать лучше. Я думал — может уже есть. Обычных списков много — деревьев мало.
UFO just landed and posted this here
UFO just landed and posted this here
Здравствуйте, а в каком файле сам select? Не нашел что-то.
за такой трэшак уже инвайты раздают, совсем хабр загнулся.
чел сделал раскрывашку блока на jQuery, причем тут select, на который нельзя повесить этот чудо-плагин, совсем непонятно
Sign up to leave a comment.

Articles