如何在拖放中使用Jquery克隆Canvas

时间:2016-06-01 14:36:49

标签: javascript jquery canvas drag-and-drop

每次我将他拖入dropzone时,我都需要克隆我的Cavans

我的画布

<canvas id="nota1" class="lego Nota"
width="10" height="20">
</canvas>

My Div(Dropzone)

风格在我的style.css

<div id="section"></div>

我的拖拽功能:

它位于不同的js文件中

$( drag );

function drag() {
  $('.lego.Nota').draggable({
  revert: "invalid",
  cursor: 'move'
});

$('#section').droppable();

}

它工作正常,但是当我终止我的拖动操作时,画布从其原始位置移动,我需要在dropzone中移动一个克隆并且原始停留在另一个拖放操作的位置。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

我不认为每次克隆你的画布都是拖放是正确的方法。看看easeljs是否能够轻松地完成您的要求。它通过javascript非常好地访问画布。

然后允许这样的东西:

//DRAG FUNCTIONALITY =====================
dragger.on("pressmove", function(evt){
     evt.currentTarget.x = evt.stageX;
    evt.currentTarget.y = evt.stageY;
     stage.update(); //much smoother because it refreshes the screen every pixel movement instead of the FPS set on the Ticker
     if(intersect(evt.currentTarget, destination)){
       evt.currentTarget.alpha=0.2;
       box.graphics.clear();
       box.graphics.setStrokeStyle(3)
       .beginStroke("#0066A4")
       .rect(0, 0, destHeight, destWidth);

     }else{
       evt.currentTarget.alpha=1;
       box.graphics.clear();     box.graphics.setStrokeStyle(2).beginStroke("black").rect(0, 0, destHeight, destWidth);
     }

});