Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.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
Jquery ui Dragable/Dropable/sortable中第一个子元素出错_Jquery Ui_Draggable_Jquery Ui Sortable_Droppable - Fatal编程技术网

Jquery ui Dragable/Dropable/sortable中第一个子元素出错

Jquery ui Dragable/Dropable/sortable中第一个子元素出错,jquery-ui,draggable,jquery-ui-sortable,droppable,Jquery Ui,Draggable,Jquery Ui Sortable,Droppable,当前正在为我的网站创建拖放播放列表功能,并使用以下代码将视频拖放到播放列表容器中: var transferred = false; $( "#videoResultsDiv li" ).draggable({ connectToSortable: '#Playlist', helper: 'clone', start: function(event, ui) { $(this).hide(); }, stop: function(eve

当前正在为我的网站创建拖放播放列表功能,并使用以下代码将视频拖放到播放列表容器中:

var transferred = false;
$( "#videoResultsDiv li" ).draggable({

  connectToSortable: '#Playlist',
  helper: 'clone',
    start: function(event, ui)
    {
        $(this).hide();
    },
    stop: function(event, ui)
    {
        if(!transferred)
            $(this).show();

        else
        {
            $(this).remove();
            transferred = false;
        }
    }
});


    $("#Playlist").droppable({
  tolerance: 'touch',
drop:function(event, ui) {
  ui.draggable.appendTo($(this));

  $(this).sortable({
    tolerance: 'pointer',
receive: function (event, ui) {
  transferred = true;
}});
}});

这适用于
播放列表
容器中的大多数视频,但放入容器中的第一个视频会继承
videoResultsDiv
中的样式和功能,导致各种错误,包括重复。我尝试了各种各样的
var transfer
,将
connectToSortable
更改为
appendTo
(当前配置是我发现的唯一一种允许我将视频从
videoResultsDiv
拖动到外部
播放列表
容器中的配置),并删除
ui.helper
克隆,但所有这些都会引起一些问题。

答案是去掉可删除的代码,如以下JSFIDLE所示:

$('#sortable').sortable({
    receive: function(event, ui)
    {
        transferred = true;
    }
});