2016-07-27 67 views
0

我一直在使用Jquery-ui可拖动来拖动几个div以获得新的位置,但我有一个问题。Jquery-ui Draggable不会将初始位置的顶部位置更改为初始位置的负数

当我初始化我给div一个位置绝对,并设置它的左侧和顶部位置,使div站正确的方式,我把它们包装在一个名为'设备预览'的div容器中,然后使用这个作为遏制工作正常,第一个div,第二个div放在第一个div下,不会从最初的位置上升。而我在迷路。

所以我创造了这个JSfiddle,以显示如何我的代码破解了,

HTML

<div class="col-md-6" id="DevicePreview" style="min-height:200px;" cg-busy="loader"> 
         <div style="position:relative;" class="draggableObj"> 
          <div style="position:absolute;"> 
           <h3><i class="fa fa-fw fa-arrows btn-success" style="padding:2px; border-radius:15%;cursor:move" ></i>move It</h3> 
           <input class="form-control" disabled="disabled"/> 
          </div> 
         </div> 
         <div style="position:relative" class="draggableObj"> 
          <div style="position:absolute; top:80px"> 
           <h3><i class="fa fa-fw fa-arrows btn-success" style="padding:2px; border-radius:15%;cursor:move" ></i>move It</h3> 
           <input class="form-control" disabled="disabled"/> 
          </div> 
         </div> 
        </div> 

JS

$(".draggableObj").draggable({ 
    containment: "#DevicePreview" 
}); 

,正如我所说,我的问题是,我可以”在底部取得div,然后切换顶部的位置。

感谢您的时间。

回答

0

所以我发现我的问题是,我试图附加一个类,然后选择多个元素的可拖动。

结果是,我只能捕获附加到可拖动区域的最后一个元素,除最后一个之外的每个人都还创建了自己的遏制。

解决的办法是在一个独特的Id基本元素上创建它,而不是由som jquery创建,然后工作。