Тема перекликается с вопросом от Padaboo Есть набор чекбоксов(10-30 штук). Задача - дать пользователю возможность менять их порядок (помимо собственно работы с ними) Не могу придумать удобный интерфейс.... В лоб реализовал так - при создании/редактировании чекбокса в выпадающем списке указывается его позиция относительно остальных (например - "После НомераПервого") Смотрел в сторону JQuery Dragable, но хз, удобно ли будет с чекбоксами работать. Может кто сталкивался?
Даже не dragable, а sortable - это прям то, что нужно. Удобно будет, если дать возможность цепляться за большую область вокруг чекбокса, включая его подпись, конечно.
Недавно делал дерево меню с перетаскиваемыми элементами с помощью плагинов JQuery - Draggables и Droppables. Инициализировать очень легко. По факту перемещения элемента или его скидыванию на другой назначаются обработчики, которым передается перетаскиваемый элемент и тот, на который что-то перетащили. Сделал так. В элементах меню добавил фейковые поля небольшой толщины, на которые можно сбрасывать элементы. Это могут быть div контейнеры между чекбоксами. Они настроены, как приемщики события droppable. А чекбоксы нужно настроить, как draggable. По событию сброса на это поле пишу Код (Text): $('#sidebar_menu a').droppable({ drop:function(event,ui){ var draggable=ui.draggable; var droppable=$(this); droppable.before(draggable); } }); Это если попало на поле, которое над чекбоксом. Ну и т.д. Могу подробней расписать.
tommyangelo я делал сортировку на этой штуке и все ок пашет. вобще ни каких проблем не встретил, сделал за пять минут. принцип такой: делаешь хидден поле, в него по событию перетаскивания пишешь всю последовательность в формате JSON кажется. =) и при получении формы в на стороне сервера работаешь с чекбоксами и с этими данными о порядке. все проще пареной репы.
Всем большое спасибо MiksIr Да, именно его я и имел в виду )))) И зацепиться там есть за что - у каждого чекбокса есть <label> соответствующая. В <ul><li> оберну и будет всё ок. YSandro sortable мне больше подойдет, тем более, что уже работал с ним. Dragable/Dropable имхо больше предназначен для позиционирования. А тут - обычная сортировка. igordata Да, это как вариант. Можно в JSON, можно свой формат придумать)))) Суть - передать пары id:sort_no Еще раз спасибо.
ок, спасибо. Еще такой момент - а пользователь поймет, что эти штучки перетаскивать можно? Может ему подсказку какую влепить?
крылышки чекбоксам если нарисовать, и анимацию пархания всплывающую подсказку при наведении можно, или оформить в контейнеры, в которых будут картинки со стрелочками.. при наведении менять курсор на крестик
В примерах сортейбл используется изменение курсора. А вообще не поверите... написать Можно сделать ссылку-переключатель "Отсортировать", по нажатию на которую меняешь стили LI-шек, например даешь пунктир по боксу и подсказку - можете перетаскивать, блин. Все очевидное - просто и наоброт. Не нужно выдумывать какие-то иконки, если можно написать словами.
За эту мысль огромный респектище. Спасибо. Про написать - поддерживаю, всегда стараюсь подсказки делать. Просто хочется и красивостей тоже))))