Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.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可排序元素并处于无效状态_Jquery_Jquery Ui Sortable - Fatal编程技术网

如何判断何时移动了jQuery UI可排序元素并处于无效状态

如何判断何时移动了jQuery UI可排序元素并处于无效状态,jquery,jquery-ui-sortable,Jquery,Jquery Ui Sortable,我有两个可连接排序的列表。我想在某个项目从当前列表中移出,但未进入另一个已连接列表或该项目正在排序时触发事件。有人知道怎么做吗 我在这里要做的是让用户通过从列表中拖出一个项目来删除它。您可以查看$(“.selector”).sortable({out:function(e,ui){};在对象被拖出列表时设置一个变量。如果它被释放,则.sortable({stop:function(e,ui){})被触发。如果.sortable({over:function(e,ui){});在out触发后没有调

我有两个可连接排序的列表。我想在某个项目从当前列表中移出,但未进入另一个已连接列表或该项目正在排序时触发事件。有人知道怎么做吗

我在这里要做的是让用户通过从列表中拖出一个项目来删除它。

您可以查看
$(“.selector”).sortable({out:function(e,ui){};
在对象被拖出列表时设置一个变量。如果它被释放,则
.sortable({stop:function(e,ui){})
被触发。如果
.sortable({over:function(e,ui){});
out
触发后没有调用,

您可以查看
$(“.selector”).sortable({out:function(e,ui){})
每当对象被拖到列表外时设置变量。如果对象被释放,则会触发
.sortable({stop:function(e,ui){});
。如果
.sortable({over:function(e,ui){}),则可以判断对象是否未被拖到列表上在
out
触发器之后未调用

在此基础上,您还可以使可排序表可拖放,并使用可拖放的
out
over
事件跟踪元素何时进入和退出该区域。在此基础上,您可以添加如下功能:

var isInside = true;

$("#sortable1, #sortable2").sortable({
    connectWith: '.connectedSortable',
    stop: function() { alert(isInside) }
})
.droppable({
    over: function() { isInside = true; },
    out: function() { isInside = false; },
    accept: "li"
});
这里有一个演示:

基于,您还可以使可排序表可拖放,并使用可拖放的
out
over
事件跟踪元素进入和退出区域的时间。基于,您可以添加如下功能:

var isInside = true;

$("#sortable1, #sortable2").sortable({
    connectWith: '.connectedSortable',
    stop: function() { alert(isInside) }
})
.droppable({
    over: function() { isInside = true; },
    out: function() { isInside = false; },
    accept: "li"
});

这里有一个演示:

我没有这样做。一种情况是将一个项目直接从排序表中拖出(而不是拖到另一个排序表上)然后将其丢弃。将不会调用
out
回调,并且变量设置不正确。不过,我是根据您的方法创建的,因为
可丢弃的
的回调调用不同,所以我无法以这种方式工作。一种情况是,将一个项直接从排序表中拖出(而不是拖到另一个排序表上)然后将其删除。将不会调用
out
回调,并且变量设置不正确。不过,我是根据您的方法创建的,因为
droppable
的回调调用不同