EaselJS 拖放:获取抓取位置
Posted
技术标签:
【中文标题】EaselJS 拖放:获取抓取位置【英文标题】:EaselJS Drag-Drop: Get Grabbing Position 【发布时间】:2015-04-13 10:02:54 【问题描述】:我想用easeljs 拖放一个容器元素。 默认情况下 event.stageX/stageY 指的是形状或容器的中心。 这意味着大元素以鼠标位置为中心,不管我是在左上角还是右下角抓取它们。
我想将元素绑定到确切的鼠标位置。
对不起,我的英语不好,这不是我的母语。
【问题讨论】:
查看 GitHub 中的 DragAndDrop 示例(此处为示例)createjs.com/demos/easeljs/DragAndDrop.html -- 存储鼠标相对于被拖动项目位置的偏移量,然后减去它。 另见***.com/questions/22829143/easeljs-glitchy-drag-drop/…。有两种方法可以固定相对于鼠标位置的对象位置,详见那里。 1) 使用 regX/regY 从鼠标偏移对象中心。 2) 计算/存储鼠标相对于拖动项目位置的偏移量并减去它,如上面 Lanny 所建议的那样。 【参考方案1】:也许为时已晚,但希望这会有所帮助。
container.on('mousedown', function(e)
var posX = e.stageX;
var posY = e.stageY;
this.offset = x: this.x - posX, y: this.y - posY;
container.on('pressmove', function(e)
var posX = e.stageX;
var posY = e.stageY;
this.x = posX + this.offset.x;
this.y = posY + this.offset.y;
【讨论】:
以上是关于EaselJS 拖放:获取抓取位置的主要内容,如果未能解决你的问题,请参考以下文章