2017-07-17 135 views
0

内投掷的项目排序列表我有内部需要进行整理得的什么投掷的物品的排序列表。 当你拖动旁的下拉项目,其中占位符是显示了一个项目,该项目落仍然在积极的占位符。与悬停占位问题

一个简单的小提琴是在这里:JSFiddle

$("#item-list").sortable(); 

$(".container").droppable({ 
    accept: ".item", 
    drop: function (e, ui) { 
     var dropped = ui.draggable; 
     var droppedOn = $(this); 
     $(this).append(dropped.clone().removeAttr('style').removeClass("item").addClass("item-container")); 
     dropped.remove(); 
    } 
}); 

是否已有此的解决方案?

回答

0

,如果你不想item container类是可排序的使用cancel

$("#item-list").sortable({ 
    cancel: ".item.container" 
}); 
+0

没有,它仍然需要排序 –

0

在这里,你去与解决方案http://jsfiddle.net/bRbyW/110/

$("#item-list").sortable(); 
 

 
$(".container").droppable({ 
 
    accept: ".item", 
 
    beforeStop: function(event, ui) { 
 
     $(this).html(); 
 
    }, 
 
    drop: function (e, ui) { 
 
     var dropped = ui.draggable; 
 
     var droppedOn = $(this); 
 
     if($(droppedOn)[0].innerHTML.indexOf('<div') < 0) 
 
\t   $(droppedOn)[0].innerHTML = ''; 
 
    $(this).append(dropped.clone().removeAttr('style').removeClass("item").addClass("item-container")); 
 
     
 
     dropped.remove(); 
 
    } 
 
});
.item { 
 
    width:200px; 
 
    height:30px; 
 
    border:1px dashed red; 
 
    margin:10px 0; 
 
    cursor:move; 
 
} 
 
.container { 
 
    height:150px; 
 
    border:1px dashed black; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script> 
 

 
<div id="item-list"> 
 
     <div class="item">1</div> 
 
     <div class="item">2</div> 
 
     <div class="item container">dropbox but still sortable</div> 
 
     <div class="item">3</div> 
 
     <div class="item">4</div> 
 
    </div>

+0

谢谢Shiladitya,我有一种感觉你几乎没有,但是如果我就在Dropbox的排序,更有耐力仍在下降 –

0

哇,我回答我自己的问题!

的解决方案是,把这个在您的排序选项列表:

refreshPositions: true 

这就像一个魅力!

THX大家!