basado en la demostración de arrastrar y soltar de createjs , estoy tratando de hacer que el círculo salte a la posición del cursor/toque con el mouse hacia abajo.
Logré hacer que el arrastre funcionara, pero no tengo idea de cómo hacer que el círculo salte a la posición.
createjs.Touch.enable(stage); this.circle_mc.on("pressmove", function (evt) { var point = stage.globalToLocal(evt.stageX, evt.stageY) evt.currentTarget.x = point.x; evt.currentTarget.y = point.y; stage.update(); });¿Alguien puede ayudarlo a hacer algo como esto?
Actualización: se las arregló para que funcionara usando este código en animar:
var _this = this; stage.on("stagemousedown", function (evt) { var point = stage.globalToLocal(evt.stageX, evt.stageY) _this.circle_mc.x = point.x; _this.circle_mc.y = point.y; var moveAround = stage.on("stagemousemove", function (evt) { var point = stage.globalToLocal(evt.stageX, evt.stageY) _this.circle_mc.x = point.x; _this.circle_mc.y = point.y; }); stage.on("stagemouseup", function (evt) { stage.off("stagemousemove", moveAround) }, null, true) });Puede hacer esto fácilmente, pero debe volver a realizar el movimiento de arrastre, ya que, de forma predeterminada, requiere que se presione el mouse sobre un objeto para iniciarlo. También debe hacer referencia al destino directamente en lugar de confiar en un destino de evento.
stage.on("stagemousedown", function(e){ sx = e.stageX; sy = e.stageY; // Handle move var evt = stage.on("stagemousemove", function(e) { // Set to mouse position each move sx = e.stageX; sy = e.stageY; }); // Handle release stage.on("stagemouseup", function(e) { stage.off("stagemousemove", evt) }, null, true) });Aquí hay un violín rápido con mejores comentarios. https://jsfiddle.net/lannymcnie/fn3gve74/1/