Javascript 如何使用jquery和jquery ui克隆拖动事件
我想在document.body中创建一个新的“.b”div附件 它可以像它的父亲一样 但我无法克隆拖动事件 如何做到这一点, 谢谢 这是我的代码:Javascript 如何使用jquery和jquery ui克隆拖动事件,javascript,jquery,jquery-ui,Javascript,Jquery,Jquery Ui,我想在document.body中创建一个新的“.b”div附件 它可以像它的父亲一样 但我无法克隆拖动事件 如何做到这一点, 谢谢 这是我的代码: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta name="viewpo
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta name="viewport" content="width=device-width, user-scalable=no">
</head>
<body>
<style type="text/css" media="screen">
</style>
<div id="map_canvas" style="width: 500px; height: 300px;background:blue;"></div>
<div class=b style="width: 20px; height: 20px;background:red;position:absolute;left:700px;top:200px;"></div>
<script src="jquery-1.4.2.js" type="text/javascript"></script>
<script src="jquery-ui-1.8rc3.custom.min.js" type="text/javascript"></script>
<script type="text/javascript" charset="utf-8">
$(".b").draggable({
start: function(event,ui) {
//console.log(ui)
//$(ui.helper).clone(true).appendTo($(document.body))
$(this).clone(true).appendTo($(document.body))//draggable is not be cloned,
}
});
$("#map_canvas").droppable({
drop: function(event,ui) {
//console.log(ui.offset.left+' '+ui.offset.top)
ui.draggable.remove();
}
});
</script>
</body>
</html>
$(“.b”).可拖动({
开始:功能(事件、用户界面){
//控制台日志(ui)
//$(ui.helper).clone(true.appendTo($(document.body))
$(this.clone(true).appendTo($(document.body))//无法克隆可拖动文件,
}
});
$(“#地图_画布”)。可拖放({
drop:函数(事件、用户界面){
//console.log(ui.offset.left+''+ui.offset.top)
ui.draggable.remove();
}
});
深度复制无法与克隆一起使用,请尝试使用jQuery live
$(".b").live("draggable", function() {
//impl
});
live事件意味着,如果选择器匹配并添加了事件,则将检查创建的每个对象。看起来您正在尝试的是“还原”。b在删除后返回其原始位置。尝试这样做:
$(".b").draggable({
revert: true,
revertDuration: 0
});
$("#map_canvas").droppable({
drop: function(event,ui) {
//console.log(ui.offset.left+' '+ui.offset.top)
}
});
这将适用于“可拖动”自定义事件,但不适用于应用可拖动插件。谢谢你的意见