Перетаскивание нескольких выбранных элементов - PullRequest
0 голосов
/ 30 июня 2011

Меня интересует лучший способ добиться перетаскивания нескольких выбранных элементов с помощью (JQuery (Ui)).

В данный момент я использую этот код

// Make all divs inside draggableArea draggable

$("#dragableArea div").draggable({

     start : function() {

     }

     drag : function() {
          // Calculate position of other selected elements here
          // by hand
     }

     stop : function() {

     }

});

Мне любопытно узнать, есть ли лучший способ добиться того же? Я хотел бы вызвать событие перетаскивания для всех выбранных элементов, чтобы они автоматически перемещались при перетаскивании любого из них. Возможно ли и если да, то как (хотя бы теоретически)?

Ответы [ 2 ]

1 голос
/ 27 сентября 2013

Вот ход рабочей группы, основанный на решении Нила, но, возможно, немного более читабельный (для меня в любом случае) и с комментариями: http://jsfiddle.net/stevea/CrJbQ/. Он работает как функция «группы» графической программы.Нажмите на поля, которые вы хотите сгруппировать.Это ставит их на «групповую плоскость».Переместите плоскость группы, перетаскивая ее или любой из сгруппированных полей.Щелкните по групповой плоскости, чтобы разгруппировать сгруппированные блоки, оставив их в новом положении.

<div id='box1' class='box'></div>
<div id='box2' class='box'></div>
<div id='box3' class='box'></div>
<div id='box4' class='box'></div>
<div id='group'></div>  // group plane
1 голос
/ 30 июня 2011

Попробуйте это: http://jsfiddle.net/maniator/zVZFq/5/

На основании моего ответа (и комментариев) здесь: Как перетащить несколько элементов одновременно с помощью JavaScript или jQuery?

Нажмите, чтобы активировать мульти-перетаскивание.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...