2009-10-09 72 views
2

我有1個可拖動的div和2個可拖動的div。這兩個可拖動的div也是可拖動的,所以這兩個div可能有重疊的機會。在這種情況下,當我拖動可拖動的div並將其拖放到重疊的div上時,是否有確保將它放在頂部的div上?jQuery droppable項目重疊

回答

2

我有一個稍微不同的問題:我有兩種類型的droppables,一種總是在另一種上面。

要知道上投擲的可拖動被放棄了,更高的可放開增加了一個類可拖動,當它被拖到它。當在兩個droppables上觸發drop事件時,檢查較低droppable以查看draggable是否具有添加的類。如果是,則忽略掉落事件。

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 
     } 
    } 
}); 
+0

我認爲這不適用於最新的jquery-ui 1.8.x,因爲它只會觸發第一個聲明的droppable,所以我最終編寫了自己的droppable:S – ben 2011-06-03 04:11:18