2012-01-09 149 views
1

我試圖拖動拖動的元素,這是拖動元素的克隆,但是當我拖動元素時,它會在頁面中創建另一個元素。這是我的代碼..拖動元素在jQuery中的克隆

jQuery(function() { 
    jQuery(".component").draggable({ 
     // use a helper-clone that is append to 'body' so is not 'contained' by a pane 
     helper: function() { 
      return jQuery(this).clone().appendTo('body').css({'zIndex':5}); 
     }, 
     cursor: 'move' 
    }); 

    jQuery('.ui-layout-center').droppable({ 
     activeClass: 'ui-state-hover', 
     accept: '.component', 
     drop: function(event, ui) { 
      jQuery(this).append(jQuery(ui.draggable).clone().draggable()); 
     } 
    }); 
}); 

是否有任何缺少的命令,使每一個拖動一個新的克隆?

回答

0

jQuery(this).append(jQuery(ui.draggable).clone().draggable());你忘了.clone()

+0

好的謝謝。但我做到了,我想要 – Jackson 2012-01-09 11:32:23

1

你應該已經爲了表明元素的類已被刪除,您可以移動,但你不應該克隆。 你可以看看這個小提琴:http://jsfiddle.net/scaillerie/njYqA/。 在處理器中,我只是用這段代碼替換:

if (!ui.draggable.hasClass("dropped")) 
    jQuery(this).append(jQuery(ui.draggable).clone().addClass("dropped").draggable());