Javascript jQuery可从一个div排序到另一个div
我对jQuery UI Sortable有点问题,需要一些帮助:我有以下html代码:Javascript jQuery可从一个div排序到另一个div,javascript,jquery,jquery-ui,jquery-ui-sortable,Javascript,Jquery,Jquery Ui,Jquery Ui Sortable,我对jQuery UI Sortable有点问题,需要一些帮助:我有以下html代码: <div class="sortable"> <div class="item"> <p>title1</p> <div class="sort">sort 1</div> </div> <div class="item"> <p>title2</p>
<div class="sortable">
<div class="item">
<p>title1</p>
<div class="sort">sort 1</div>
</div>
<div class="item">
<p>title2</p>
<div class="sort">sort 2</div>
</div>
<div class="item">
<p>title3</p>
<div class="sort">sort 3</div>
</div>
</div>
如果我在可排序选项中指定仅对指定的项进行排序,则它们将被排序,但会从我想要的div结构中取出-每个都在父“.item”元素中
以下是对行为的一种摆弄:
有没有一种方法可以实现jQuery Sortable所需的功能?我所看到和尝试过的所有例子都没有这样的结果。非常感谢 想找这样的东西吗
var dropped;
var titleDrop;
var titleChange;
$(function() {
$(".sortable").sortable({
items: ".sort",
stop: function( event, ui ) {
if(titleDrop != titleChange)
dropped.append(ui.item);
},
change: function(event, ui){
titleChange = ui.placeholder.parent().find('p').text();
}
});
$( ".item" ).droppable({
accept: ".sort",
drop: function( event, ui ) {
dropped = $(this);
titleDrop = $(this).find('p').text();
}
});
});
更新
包括交换位置:
在找这样的东西吗
var dropped;
var titleDrop;
var titleChange;
$(function() {
$(".sortable").sortable({
items: ".sort",
stop: function( event, ui ) {
if(titleDrop != titleChange)
dropped.append(ui.item);
},
change: function(event, ui){
titleChange = ui.placeholder.parent().find('p').text();
}
});
$( ".item" ).droppable({
accept: ".sort",
drop: function( event, ui ) {
dropped = $(this);
titleDrop = $(this).find('p').text();
}
});
});
更新
包括交换位置:
所以,当我将排序3拖动到标题1下,排序1移动到标题2下,排序2移动到标题3下时,您希望发生的是当我将排序3拖动到标题1下,排序1移动到标题2下,排序2移动到标题3下时?谢谢!这几乎是我所需要的,我意识到我应该添加的唯一一件事是.sort项在拖动时应该交换位置,例如,将.sort1拖到sort2上,它们会改变位置。经过一段时间的搜索,我认为这实际上不需要使用jQuery sortable,只需拖放即可完成。@loreley是的,这可能不需要拖放。这正是我想要的,我非常感谢您花时间来完成它!谢谢谢谢这几乎是我所需要的,我意识到我应该添加的唯一一件事是.sort项在拖动时应该交换位置,例如,将.sort1拖到sort2上,它们会改变位置。经过一段时间的搜索,我认为这实际上不需要使用jQuery sortable,只需拖放即可完成。@loreley是的,这可能不需要拖放。这正是我想要的,我非常感谢您花时间来完成它!谢谢