2011-07-13 39 views
4

我想創建一個小應用程序,用戶可以拖動圖像並移動它。jQuery複製並拖動圖像

我正在使用jQuery UI。我能夠創建一個克隆,但拖動的東西不起作用。另外,創建克隆時,它會添加到「this」圖像旁邊。我希望克隆和原始圖像相互交疊。因此,mousedown事件會創建一個新圖像並使其可拖動,從而獲得克隆效果。

的演示是在http://www.kalomaya.com/dragable/index.html

.draggable { 
float:left; 
margin-right:10px; 
margin-bottom:10px; 
position:relative; 
} 

<div class="draggable"><img src="images/imageA.png" /></div> 
<div class="draggable"><img src="images/imageB.png" /></div> 

<script type="application/javascript"> 
$(function(){ 
    $(".draggable").mousedown(function() 
    { 
     $(this).children().clone().appendTo(this); 
     $(this).children().draggable(); 
     }); 
}); 
</script> 

回答

12

你或許應該使用jQueryUI的的拖拽功能做克隆:

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

更新:由於上面並沒有真正回答你的整個問題,我創建了認爲你想要做的jsfiddle

$('.draggable').draggable({helper: "clone"}); 
$('.draggable').bind('dragstop', function(event, ui) { 
    $(this).after($(ui.helper).clone().draggable()); 
}); 
+0

超..謝謝很多人。真的很短,聰明的編碼:)。 – rex

+0

明智的答案,謝謝你。幫助很多。 – dotty

+0

只是一個簡單的問題,當元素被克隆時,它的所有「可丟棄」元素都不會對它做出反應。任何想法如何重新綁定到它? – dotty