0

我在这个小提琴中使用可拖动的 connectToSortable 和克隆选项:

var draggable_opts = {
        connectToSortable: ".sph-callout-portlet",
        helper: "clone",
        opacity: 0.75,
        revert: 'invalid',
        stop: function(event, ui) {
            // this seems to only access the original item not the clone
        }
    };

$(function() {
    $( ".sph-callout-portlet" ).sortable({
        opacity: 0.75,
        placeholder: "ui-state-highlight",
    }).disableSelection();

    $( "#sph-callout-portlet-avail li" ).draggable(draggable_opts);

});

当我删除元素时,我想获取它被放入的区域的 ID,或者至少是元素本身。现在,根据文档draggable + connectToSortable + clone使用droppable,但我看不到获取删除元素的方法。

(上面的代码最初发布在一个有不同问题的问题中

4

3 回答 3

1

要获取它被丢弃的元素,您可以执行以下操作:

$(".sph-callout-portlet" ).sortable({
   opacity: 0.75,
   placeholder: "ui-state-highlight",
   receive: function(event, ui) {
     console.log($(this).data().sortable.element);
   }
}).disableSelection();
于 2013-01-07T12:06:59.747 回答
0

尝试这个

 $( "#sph-callout-portlet-avail li" ).droppable({
     drop: function (event, ui) {
       console.log(ui.draggable.text());
     }
 });

在这里摆弄

于 2013-01-07T11:54:38.203 回答
0

您需要在可放置区域上实例化放置对象:

$(area_selector).droppable({
    drop: function (event, ui) {
        var $area = $(this); // The droppable
        var $draggable = ui.draggable; // The draggable
    }
});
于 2013-01-07T11:43:48.730 回答