jQuery UI可排序-用户开始从特定块中拖动元素时执行某些操作 [英] jQuery UI sortable - do something when user starts dragging an element from a specific block

查看:82
本文介绍了jQuery UI可排序-用户开始从特定块中拖动元素时执行某些操作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

此问题与

我有两个块,一个是可拖动的",另一个是可排序的".

I have two block one is "draggable" and the other is "sortable".

我想做的是当我开始从可排序"中拖动一个项目以通过jQuery做某事时.

What I want to do is when I start dragging an item from "sortable" to do something via jQuery.

这是我的JS:

 $(".sortableList").sortable({
 start: function(event, ui) {
       alert("Do something here!");
    }
 });
 $(".draggable").draggable({
 connectToSortable: '.sortableList',
 cursor: 'pointer',
 helper: 'clone',
 revert: 'invalid',
 start: function (event, ui) {
     $(this).addClass('testing');
 }
 });

 $("#sidebar-wrapper").droppable({
 accept: 'li',
 drop: function (event, ui) {
     ui.helper.remove();
 }
 });

问题是在将元素从可拖动"拖放到"sortableList"之前,我想做些什么,而当元素从"sortableList"拖动时,我想做些什么.

The problem is that is doing something before I drop the element from "draggable" to "sortableList" and I want to do something when element is dragged from "sortableList."

这是 jsbin .

有关如何执行此操作的任何建议?

Any suggestions on how can I do this?

推荐答案

我不确定这是否会算作jQuery UI Sortable中的错误-似乎肯定是这样.解决该问题的一种方法是查询start中的event参数:

I'm not sure if this would count as a bug in the jQuery UI Sortable or not - it certainly seems that it might be. One way you can get around it is to query the event parameter in start:

$(".sortableList").sortable({
    start: function(event, ui) {
        if (event.handleObj.namespace=="sortable")
            alert("Do something here!");
    }
});

更新了JSBin

这篇关于jQuery UI可排序-用户开始从特定块中拖动元素时执行某些操作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆