首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >拖放功能

拖放功能
EN

Stack Overflow用户
提问于 2015-07-08 14:17:36
回答 1查看 539关注 0票数 0

我使用query作为拖放,我的所有元素都有相同的类'.draggable‘和’下拉区域‘。当删除了类.draggable的每个元素时,我想触发一个函数。有人能告诉我一种简单的方法吗?

代码语言:javascript
复制
<div id="left-panel">
    <div id="drag-1" class="draggable">dra 1</div>
    <div id="drag-2" class="draggable">dra 2</div>
    <div id="drag-3" class="draggable">dra 3</div>
</div>
<div id="right-panel">
    <div id="drop-1" class="dropzone sekt dropzone ui-droppable"></div>
    <div id="drop-2" class="dropzone sekt dropzone ui-droppable"></div>
    <div id="drop-3" class="dropzone sekt dropzone ui-droppable"></div>
</div>

Jquery

代码语言:javascript
复制
//DRAG CONDITIONS

$("#drag-1").draggable({
    containment: '.zone-container',
    snap: '#drag-1',
    revert: 'invalid'
});
$("#drag-2").draggable({
    containment: '.zone-container',
    snap: '#drag-2',
    revert: 'invalid'
});
$("#drag-3").draggable({
    containment: '.zone-container',
    snap: '#drag-3',
    revert: 'invalid'
});

//DROP & ACTION 
$("#drop-1").droppable({
    accept: "#drag-1",
    drop: function (event, ui) {
        $('.popup').show();
    }
});
$("#drop-2").droppable({
    accept: "#drag-2",
    drop: function (event, ui) {
        $('.popup').show();
    }
});
$("#drop-3").droppable({
    accept: "#drag-3",
    drop: function (event, ui) {
        $('.popup').show();
    }
});

小提琴- http://jsfiddle.net/j9Ump/63/

EN

回答 1

Stack Overflow用户

发布于 2015-07-08 14:36:08

您可以检查可下降的div数的长度,并在每一滴上减少计数器。当计数器达到零时验证。这意味着所有的都被丢弃了。更新小提琴- http://jsfiddle.net/j9Ump/67/

代码语言:javascript
复制
//DRAG CONDITIONS
counterForDropped = $("#left-panel").find('.draggable').length;
$("#drag-1").draggable({
    containment: '.zone-container',
    snap: '#drag-1',
    revert: 'invalid'
});
$("#drag-2").draggable({
    containment: '.zone-container',
    snap: '#drag-2',
    revert: 'invalid'
});
$("#drag-3").draggable({
    containment: '.zone-container',
    snap: '#drag-3',
    revert: 'invalid'
});

//DROP & ACTION 
$("#drop-1").droppable({
    accept: "#drag-1",
    drop: function (event, ui) {
        counterForDropped--;
        checkLastDrop();
    }
});
$("#drop-2").droppable({
    accept: "#drag-2",
    drop: function (event, ui) {
        counterForDropped--;
        checkLastDrop();
    }
});
$("#drop-3").droppable({
    accept: "#drag-3",
    drop: function (event, ui) {
        counterForDropped--;
        checkLastDrop();
    }
});

function checkLastDrop() {

    if (counterForDropped === 0) {
        alert('last dropped');
    }

}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31295414

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档