我想知道是否有人有任何关于如何检测被拖动的可排序项目是否悬停在同一列表中的另一个项目上的想法?我想要检测到这个的原因是,如果一个li项目被删除到另一个项目,它将在已经被删除的li下创建一个子列表。
我尝试了许多方式,但似乎无法做到正确。任何帮助将不胜感激。
谢谢! 安迪
答案 0 :(得分:1)
您也可以在列表droppable中创建元素:
$item.droppable({
over: function (event, ui) { ... },
out: function (event, ui) { ... },
drop: function (event, ui) { ... },
greedy: true,
hoverClass: 'highlight'
});
$ item可以是排序列表中的列表元素(例如ul中的li)或li中的某个元素,如div,可以避免意外的悬停检测。当可排序的拖动元素进入和退出droppable时,将触发事件。 Drop可能是你想要的最有用的东西。
答案 1 :(得分:0)
我遇到了与你类似的问题,我在这里找到了一个解决方案:http://a.shinynew.me/post/4641524290/jquery-ui-nested-sortables 这个想法是你没有检测到什么时候超过另一个li项,但是你使用了sortable connectWith
<div id="example5">
<ul>
<li >Item 1
<ul>
<li >Item 1 1<ul></ul></li>
<li >Item 1 2<ul></ul></li>
<li >Item 1 3<ul></ul></li>
</ul>
</li>
<li >Item 2<ul></ul></li>
<li >Item 3<ul></ul></li>
<li >Item 4<ul></ul></li>
</ul>
和javascript:
$("#example5 ul").sortable({
connectWith: "#example5 ul",
placeholder: "ui-state-highlight"});