2

我有 1 个可拖动的 div 和 2 个可放置的 div。这 2 个可放置的 div 也是可拖动的,因此这 2 个 div 可能会重叠。在那种情况下,当我将可拖动的 div 拖放到重叠的 div 时,是否有办法确保它被放在顶部?

4

1 回答 1

2

我有一个稍微不同的问题:我有两种类型的 droppables,一种总是在另一种之上。

要知道可拖动对象被放置在哪个可放置对象上,较高的可放置对象在将其拖动到可拖动对象上时为其添加了一个类。当两个 droppable 上的 drop 事件触发时,较低的 droppable 检查可拖动对象是否具有添加的类。如果是,那么它忽略了 drop 事件。

top.droppable({
    over: function( drop_event, drop_ui ) {
      drop_ui.helper.addClass('over_top_element');
    },
    out: function( drop_event, drop_ui ) {
      drop_ui.helper.removeClass('over_top_element');
    },
    drop: function(drop_event, drop_ui) {
      //Handle drop here
    }
});

bottom.droppable({
    drop: function(drop_event, drop_ui) {
        if (!ui.helper.hasClass('over_top_element'))
        {
            //Handle drop here
        }
    }
});
于 2011-06-02T18:10:13.277 回答