jQuery可拖动元素,如何输出被拖动的div的class id?

3

我想要输出我拖拽的方块所在的div的id。

是否有任何线索可以跟踪拖放的位置? 我从jQuery中读取了位置,但是还没有想出来。

以下是我的代码:

$('.drop').droppable({
    tolerance: 'intersect',
    drop: function(event, ui) {
        var drop_p = $(this).offset();
        var drag_p = ui.draggable.offset();
        var left_end = drop_p.left - drag_p.left + 1;
        var top_end = drop_p.top - drag_p.top + 1;

        ui.draggable.animate({
            top: '+=' + top_end,
            left: '+=' + left_end
        });
    }
});

$('.boxArt').draggable({
    revert: 'invalid',
    scroll: false,
    stack: ".boxArt"
});
1个回答

1

尝试

$('.drop').droppable({
    tolerance: 'intersect',
    drop: function(event, ui) {
        console.log(this.id)// this.id will give the `.drop` id to which the element was dropped
        var drop_p = $(this).offset();
        var drag_p = ui.draggable.offset();
        var left_end = drop_p.left - drag_p.left + 1;
        var top_end = drop_p.top - drag_p.top + 1;

        ui.draggable.animate({
            top: '+=' + top_end,
            left: '+=' + left_end
        });
    }

});

演示:Fiddle


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接