2015-06-14 77 views
0

上我想創建一個jquery拖放像下面掉落相同拖動的元素

1)I可與類doDrag 2)I可以丟棄doDrag拖動元件到一個名爲#內容 3格)另外,doDrag元素應該能夠放入舊的doDrag div,之前放入#content div

我下面做了它。但有問題。

 $(".doDrag").draggable({ 
      helper:"clone" 
     }); 

     makeDroppable($("#content")); 

     function makeDroppable(elements) { 

     console.debug(elements); 
     $(elements).droppable({ 
      activeClass: "ui-state-hover", 
      hoverClass: "ui-state-active", 
      drop: function (event, ui) { 
       var uuid = guid(); 
       $(this).append("<div style='border:2px solid;height:50px;width:400px;' id='" + uuid + "'>Drop</div>"); 
       makeDroppable($("#" + uuid)); 
       return false; 
      } 
     }); 
    } 

發生的事是drop事件多次調用。

任何人都可以幫助我請

+0

我沒有測試你的代碼,但'makeDroppable($(「#內容」));'通過一個jQuery元素的功能,你做'$(元素).droppable ...'應該是'elements.droppable ...' – MrUpsidown

回答

0

終於找到了答案。

什麼我必須做的就是添加貪婪:真

elements.droppable({ 
      greedy: true, 
      activeClass: "ui-state-hover", 
      hoverClass: "ui-state-active", 
      drop: function (event, ui) { 

       console.debug($(this)); 
       var uuid = guid(); 
       $(this).append("<div style='border:2px solid;height:50px;width:400px;' id='" + uuid + "'>Drop</div>"); 
       makeDroppable($("#" + uuid)); 
       return false; 
      } 
     }); 
相關問題