使用jquery droppable,我怎样才能复制trello将人们的图像丢到卡片右下角卡片上的行为?

leo*_*ora 5 jquery jquery-ui jquery-ui-draggable jquery-ui-droppable trello

我有一堆可拖动的图像,我有一堆可放置的项目.在trello中,当我将图片拖到卡片上时,它会卡在卡片的右下角.

在此输入图像描述

如果我在同一张卡上拖动另一个人的图片,它会捕捉到最后一张图片的左侧,等等.这部分是jquery UI的内置API可放置还是这个自定义代码来获取此行为?

这是我目前的代码:

 <script type="text/javascript">
    $(function () {
        $(".draggable").draggable({ revert: "invalid", snap: "true", snapMode: "inner" });
        $(".droppable").droppable({
        });
    });
</script>
Run Code Online (Sandbox Code Playgroud)

Tre*_*vor 10

这是完成类似使用的一种方法jQuery-ui-droppable.

HTML

<div id="test">
    <div class="draggable">1</div>
    <div class="draggable">2</div>
    <div class="draggable">3</div>
    <br>
    <br>
    <div class="droppable">
        <div class="bottom"> 
        </div>    
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS

.draggable {
   display:inline-block;
   border:1px solid blue;
   height: 22px;
   width: 25px;
   margin-right: 1px;
   text-align: center;
   vertical-align: center;
}
.droppable {
    position: absolute;
    border:1px solid black;
    height:100px;
    width:200px;
    display:inline-block;
    margin-left:50px;
    text-align: right;
}
.bottom {
    position: absolute;
    bottom: 0;
    height:25px;
    width:200px;
}
Run Code Online (Sandbox Code Playgroud)

jQuery

$(".draggable").draggable({ revert: "invalid", snap: "true", snapMode: "inner" });
$(".droppable").droppable({
    drop: function( event, ui ) {
           ui.helper.css('top','');
           ui.helper.css('left','');
           $(this).find('.bottom').prepend(ui.helper);
        }
});
Run Code Online (Sandbox Code Playgroud)

小提琴示例

另一个例子

多个Droppables

我不是很熟悉,trello但会检查它是否有任何我缺少的功能.

另外,如果您在我的示例中找到了缺少的内容,请告诉我,我会努力解决它.