【问题标题】:How to perform an action after the last draggable element has been dropped..如何在最后一个可拖动元素被删除后执行操作..
【发布时间】:2014-05-19 12:12:23
【问题描述】:

在最后一个放置动作之后(可放置的元素编号总是不同)我想显示例如提交按钮。

这是一个工作示例(对应部分):

$('.unsortedChoiceBox1 li').draggable({
    appendTo: "body",
    helper: "clone",
    revert: true,
    scope: "d1",
});

$( "#droppable1 ol" ).droppable({
    scope: "d1",
    activeClass: "ui-state-default",
    hoverClass: "ui-state-hover",
    accept: '.unsortedChoiceBox1 li',
    drop: function( event, ui ) {
        ui.draggable.draggable('option','revert',false); 
        ui.draggable.clone().appendTo(this);
        ui.draggable.remove();

    }
});

请给我一个想法:如何检测,哪个可拖动元素是最后一个?

【问题讨论】:

    标签: javascript jquery jquery-ui drag-and-drop


    【解决方案1】:

    这里是代码。您需要在放置事件时计算拖动元素和增量计数器

        $('.unsortedChoiceBox1 li').draggable({
                    appendTo: "body",
                    helper: "clone",
                    revert: true,
                    scope: "d1",
                });
                var count = 0;
    var drags = $('.unsortedChoiceBox1 li').size();
                $("#droppable1 ol").droppable({
                    scope: "d1",
                    activeClass: "ui-state-default",
                    hoverClass: "ui-state-hover",
                    accept: '.unsortedChoiceBox1 li',
                    drop: function(event, ui) {
                        ui.draggable.draggable('option', 'revert', false);
                        ui.draggable.clone().appendTo(this);
                        ui.draggable.remove();
                        count++;
                        if (drags == count) {
                            alert('all elements are dropped');
                            //show submit button
                        }
    
                    }
                });
    

    【讨论】:

    • 非常感谢,我现在正在测试.. 不行,因为:一个可拖动的元素在相应的drop之后已经被删除了。因此,您将无法检测到尺寸。我想,我必须使用 2 个计数器?
    • 也许我必须在变量中的所有操作之前保存大小。这可能是解决方案,谢谢..
    猜你喜欢
    • 1970-01-01
    • 2021-09-18
    • 1970-01-01
    • 1970-01-01
    • 2010-10-30
    • 2016-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多