我有同样的问题,我有两个 div 标签,我想从动态创建的图像列表中拖动图像。但我想限制另一个图像被拖动到同一个 div 上。
我使用了 Jamiec 在其回答中所说的方法。
但是,继承人的问题是我遇到了一个我无法解决的错误
未捕获的类型错误:无法设置未定义的属性“originalPosition”
请有人帮助我消除此错误。
我有同样的问题,我有两个 div 标签,我想从动态创建的图像列表中拖动图像。但我想限制另一个图像被拖动到同一个 div 上。
我使用了 Jamiec 在其回答中所说的方法。
但是,继承人的问题是我遇到了一个我无法解决的错误
未捕获的类型错误:无法设置未定义的属性“originalPosition”
请有人帮助我消除此错误。
请检查演示。如果已经有一个元素被放置在 droppable 上,元素将始终恢复到它的原始位置。
$('#target').droppable({
accept: ".dragme",
drop: function(event, ui) {
ui.draggable.addClass('dropped');
ui.draggable.draggable( "disable" );
$('#target').droppable( "option", "accept", "" );
}
});
$('.dragme').draggable({
revert : 'invalid'
});
这是另一个演示,当一个新元素被删除时,现有的被删除元素将恢复到它的原始位置。
var droppedObj = null;
$('#target').droppable({
accept: ".dragme",
drop: function (event, ui) {
if(droppedObj !== null) {
droppedObj.animate({ left: '0px', top : '0px', opacity : 1 }, 200).removeClass('dropped');
droppedObj.draggable("enable");
}
droppedObj = ui.draggable;
ui.draggable.addClass('dropped').draggable("disable");
}
});
$('.dragme').draggable({
revert: 'invalid'
});