我假设当您将可拖动对象放在目标上时,您不希望它恢复,但是在将其移出目标后,您希望它恢复到原来的位置其余的可拖动对象?
如果是这种情况,this answer 中的代码就是您要查找的内容,尽管顶部和左侧位置的值 0, 0 似乎是硬编码的,但它们是必要的,因为可拖动的 position CSS 属性在变成可拖动对象后被设置为relative,因此将它们设置回0, 0会将它们移回原来的位置。
这是jsfiddle example,也是您示例中修改后的代码:
$('#target').droppable({
// you need to set revert to a function as the 'out' event is turning it
// into a function...
drop: function(event, ui){
ui.draggable.draggable('option', 'revert', function(){return false});
},
out: function(event, ui){
ui.draggable.draggable('option', 'revert', function(){
$(this).data('draggable').originalPosition = {
top: 0,
left: 0
};
return true;
});
}
});
希望这会有所帮助!如果我完全错过了标记,请告诉我!