2015-09-17 101 views
4

預先感謝您看看這個!jQuery UI - 可拖拽幫助器克隆

我的目標:

  • 在拖放對象到對象的技術帆布,原始(或複製)必須保持在「工具欄」的頂部,使得用戶可以使用它一再。

  • 一旦拖動對象放置到藝術畫布,我需要的,如果用戶決定他/她想要將它移到

發生了什麼事就在全帆布保持可拖動:

  • (完整)該對象正在按預期進行克隆並放到畫布上
  • 該對象在放置後不再沿着畫布拖動。我試圖找出如何在拖放後保持拖動狀態。

克隆選項是我能夠創建一個可拖動對象的新實例的唯一方法,也許我在考慮錯誤的方向。

我創建一個克隆這樣:

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

$("#artCanvas").droppable({ 
    accept: ".objectDrag", 
    drop: function(event,ui){ 
     var new_smiley = $(ui.helper).clone(); 
     $(this).append(new_smiley); 
    } 
}); 

這裏是一個可視化正在發生的的jsfiddle: http://jsfiddle.net/YRfVd/55/

請讓我知道如果我是在不清楚反正或者可能提供進一步解釋。再一次,非常感謝你花時間看這個 - 你們真棒!

彌敦道

回答

7

您可以通過draggable()函數初始化在克隆拖動功能,並刪除objectDrag類,以便新添加的對象不開始創建自己的克隆。

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

$("#artCanvas").droppable({ 
    accept: ".objectDrag", 
    drop: function(event,ui){ 
     var new_signature = $(ui.helper).clone().removeClass('objectDrag'); 
     new_signature.draggable(); 
     $(this).append(new_signature); 
    } 
}); 

的jsfiddle:http://jsfiddle.net/YRfVd/56/

+0

非常感謝你的幫助!這完全解決了我的問題,並且幫助非常大。我非常感謝這個社區和像你這樣有知識淵博的人。 –

+0

我很高興它幫助你..!快樂編碼.. :) – Chitrang

+0

最後! 在嘗試了一個gazillion插件,搜索互聯網的日子之後,您回答了關於無性系統的簡單或我想過的問題。感謝你的學習者。 :-) -Rachel – user1204493