我想在移动的项目上附加一个按钮,单击该按钮将从列表中删除该项目并将其返回到其原始位置。该插件具有我正在寻找的功能,但我一直在搜索一整天,看起来 .sortable 中缺少此功能。
我的结构是:
<ul class="sortable">
<li class="parent old">
<h3 class="heading">User 1</h3>
<a class="remove">X</a>
<ul class="sortable">
<li class="ui-state-default old">
<h3>My Image</h3>
</li>
<li class="ui-state-default old">
<h3>My Image 2</h3>
</li>
</ul>
</li>
</ul>
这是js:
$('.sortable').sortable({
connectWith: [".newList"],
handle: "h3",
cursor: "move",
placeholder: "placeHolder",
opacity: 0.5,
items: ".old",
clone: "helper",
revert: true
});
$('.remove').click(function(){
$(this).prevAll('.parent:first').remove();
});
尝试不同的东西我可以成功地调用 .sortable("destroy") 但如果它不会再次出现在原始列表中,那将没有任何好处。在这个 fiddle中,我一直在查看另一种可能的(不理想的)解决方案。基本上我对这个解决方案的想法是为按钮添加一个破坏,它总是在原始列表中。这里的问题是,如果相应的项目从新列表中销毁,我确实需要至少从原始列表中隐藏它并显示它。所以理想情况下,如果可能的话,我想用 .sortable 来做这件事。