【问题标题】:How to keep a draggable object in its original place after drop拖放后如何将可拖动对象保留在其原始位置
【发布时间】:2013-04-28 10:44:35
【问题描述】:

我有一个小型可拖动/可放置的 jquery 应用程序,我无法保留可拖动项目并在其克隆被放置后将其保持在其原始位置。

有人可以帮忙吗?

http://jsfiddle.net/franco13/vLSZf/1/

谢谢。

$(init);

function init() {

    $('.teamEmblem').draggable({
        //    containment: $('.teamEmblem').parent(), // this does not work
        cursor: 'move',
        helper: 'clone',
        obstacle: ".teamEmblem", // this does not work
        preventCollision: true, // this does not work
        revert: true
    });

    $('.winner').droppable({
        hoverClass: 'hovered',
        tolerance: 'touch',
        drop: handleCardDrop1
    });

}

function handleCardDrop1(event, ui) {

    if (true) {
        ui.draggable.addClass('correct');
        ui.draggable.draggable('disable');
        $(this).droppable('disable');
        ui.draggable.position({
            of: $(this),
            my: 'left top',
            at: 'left top'
        });
        ui.draggable.draggable('option', 'revert', false);
    }

}

【问题讨论】:

    标签: jquery draggable droppable


    【解决方案1】:

    您可以克隆可拖动元素并将小样式应用到克隆的元素:

    SEE DEMO

    function handleCardDrop1(event, ui) {
        if (true) {
    
            ui.draggable.addClass('correct');
            ui.draggable.draggable('disable');
            $(this).droppable('disable');
    
            var dragged = ui.draggable.clone(true);
            dragged.position({
                of: $(this),
                my: 'left top',
                at: 'left top'
            }).css({
                position: 'absolute',
                display: 'block',
                margin: '0 auto'
            });
            ui.draggable.draggable('option', 'revert', false);
            $('body').append(dragged);
        }
    
    }
    

    【讨论】:

    • 感谢@roasted。 (显然)你的 jsfiddle 工作。我会将您的代码合并到我的脚本中并回发并接受这个作为答案。非常感谢您的帮助。
    • 这很完美,正是我想要的。谢谢@roasted!
    • 我有另一个问题stackoverflow.com/questions/16263164/…@roasted 如果您喜欢解决 jquery 拖放的挑战。谢谢!
    猜你喜欢
    • 2014-01-16
    • 2011-08-03
    • 1970-01-01
    • 2019-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多