![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| Raily |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 146 Регистрация: 25.9.2006 Репутация: нет Всего: нет |
У меня есть следующий код:
Он позволяет при помощи jquery перетаскивать объекты по одному (код я взяла тут: http://www.linkexchanger.su/2008/21.html) У меня такой вопрос - а как можно сделать так, чтобы я выделяла мышкой несколько объектов и они точно так же перетаскивались? |
|||
|
||||
| IDVsbruck |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 778 Регистрация: 12.11.2006 Репутация: 8 Всего: 22 |
Да, можно. Главный вопрос - как осуществить механизм выделения нескольких элементов. Далее просто - допустим, мы выделили несколько элементов, и назначаем им стиль selected, а далее - так же - $("div.elmt.selected").{...}
Вопрос с выделением, думаю, решаемый - можно пробовать анализировать события мыши в контейнере, где находятся элементы: нажание мыши в контейнере, но не на элементах, рассматривается как начало выделения элементов, при движении можно показывать рамку и сразу определять попал ли в выделение элемент, а можно при отпускании мыши это делать. При попадании элемента в выделение назначаем класс selected, при выходе из зоны убираем класс. Возможно, сырой алгоритм, но я бы пошел именно по такому пути. Благо, jQuery предоставляет много возможностей для подобных манипуляций. |
|||
|
||||
| Raily |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 146 Регистрация: 25.9.2006 Репутация: нет Всего: нет |
Спасибо большое!!! буду пробовать
|
|||
|
||||
| Raily |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 146 Регистрация: 25.9.2006 Репутация: нет Всего: нет |
что-то зашла в тупик - не могу понять, как сказать Jquery, что несколько объектов должны одновременно перетаскиваться? выделить их выделила, но перетаскиваются они по одному всё равно
Это сообщение отредактировал(а) Raily - 30.6.2009, 11:41 |
|||
|
||||
| IDVsbruck |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 778 Регистрация: 12.11.2006 Репутация: 8 Всего: 22 |
Сам не использовал drag&drop в js (и в jQuery), но дока вроде говорит, что можно перетаскивать пачкой.
А что, селектор $("div.elmt.selected") не дает все элементы, у которых классы elmt и selected? |
|||
|
||||
| Raily |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 146 Регистрация: 25.9.2006 Репутация: нет Всего: нет |
Не, не помогает((( он просто перетаскивает только те элементы, у которых есть и elmt и selected, но по очереди, а не все сразу |
|||
|
||||
| IDVsbruck |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 778 Регистрация: 12.11.2006 Репутация: 8 Всего: 22 |
Ну, тогда можно реализовать слегка гиморный, но зато "железобетонный" способ: выделяем и при драге создаем контейнер с абсолютныи позиционированием, по размеру как обрамляющий выделенные элементы прямоугольник, куда помещаем дубликаты выделенных элементов (сами элементы прячем). Делаем драг созданному контейнеру, который содержит требуемые элементы ... и т.д., надеюсь, идея понятна.
|
|||
|
||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 84 Всего: 386 |
Разумнее, imho, воспользоваться методами этого самого draggable.
По старту нужно запомнить все координаты всех отмеченных объектов. По драгу - переместить все отмеченные объекты, кроме себя самого на нужное смещение, относительно собственных стартовых координат. -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |