Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery Draggable的行为不符合预期_Javascript_Jquery_Jquery Ui - Fatal编程技术网

Javascript jQuery Draggable的行为不符合预期

Javascript jQuery Draggable的行为不符合预期,javascript,jquery,jquery-ui,Javascript,Jquery,Jquery Ui,我的jQuery拖放环境中的行为不符合预期:每个初始div都应该可以自由拖动,“adddiv”按钮将添加另一个可拖动div。它们不应该停止拖动,应该可以再次拖动,而不是冻结到位 我使用了.draggable()来启用拖动,并向控制台报告定位,使用.append()来添加更多div 刚开始移动后,它们就冻结了,但是附加的div可以再次移动。我解决了您的问题 每次单击AddDiv时,您都在创建一个id为“6”的div $("#adddiv").click(function() { $('<

我的jQuery拖放环境中的行为不符合预期:每个初始div都应该可以自由拖动,“adddiv”按钮将添加另一个可拖动div。它们不应该停止拖动,应该可以再次拖动,而不是冻结到位

我使用了
.draggable()
来启用拖动,并向控制台报告定位,使用
.append()
来添加更多div

刚开始移动后,它们就冻结了,但是附加的div可以再次移动。

我解决了您的问题

每次单击AddDiv时,您都在创建一个id为“6”的div

$("#adddiv").click(function() {
  $('<div></div>').draggable().appendTo($('#set'));

});
$(“#adddiv”)。单击(函数(){
$('').draggable().appendTo($('#集');
});

Fiddle:

动态分配属性值,如-

  $("#adddiv").click(function() {

       var lastid = $("#set div").last().attr('data-need')
       lastid = parseInt(lastid) + 1;

       $('#set').append('<div id="' + lastid+ '" data-need="' +lastid + '"></div>');
       $( "#" + lastid ).draggable();
 });
$(“#adddiv”)。单击(函数(){
var lastid=$(“#set div”).last().attr('data-need'))
lastid=parseInt(lastid)+1;
$('#set')。追加('');
$(“#”+lastid).draggable();
});

也许有更简洁的方法可以做到这一点。尽管如此,对于超过1个动态附加的块,这仍然适用于JSFIDLE,而不会冻结。

您必须使用类而不是id

$('#set')。追加('');

添加功能还有另一个问题谢谢,但是一旦停止拖动,原始div将冻结。仍然无法“重新拾起它们”@user1202278:你确定吗?这对我来说很好。
$('#set').append('<div class="6" data-need="6"></div>');