我在我的代码中使用拖拽和拖拽jquery ui。代码工作正常。但用户应该有一些保存后编辑数据的能力。这意味着我需要在用户再次打开页面时恢复拖动和拖动位置。我尝试使用触发器,但我无法模拟“drop ui”我该怎么做?还原拖拽位置
$(".draggable-children-username").draggable({
snap: ".draggable-in-box",
opacity: 0.7,
revert: 'invalid',
helper: "clone"
});
$(".draggable-in-box").droppable({
accept: $(".draggable-children-username"),
hoverClass: "dropHover",
drop: function (ev, ui) {
$(this).trigger("DopeEvent", ui);
}
});
$(".draggable-in-box").bind("DopeEvent", function(event, ui){
console.log(ui);
var me = ui.draggable.clone()
ui.draggable.draggable("disable")
me.appendTo(this)
.addClass("newClass");
me.draggable({
accept: ".draggable-in-box",
revert: function(valid) {
if(!valid) {
this.remove();
$(".dr-children-id-"+this.attr("data-id")).draggable("enable");
}
}
});
});
$(".draggable-in-box").trigger("DopeEvent", $(".dr-children-id-140"));
当前错误:未捕获的类型错误:ui.draggable.clone不是一个函数
http://jsfiddle.net/vjGY4/123/
我无法复制您描述的问题。 – Twisty
@Twisty可拖动(我的示例中的“元素”jsfiddle)应在打开页面时自动放到框中。 (没有用手拖放) – Rasvet
所以你想执行一个动画,将它移动到盒子里? – Twisty