如果用户将元素拖动到视口之外,则需要移动它。 offsetX和offsetY在这里没有帮助。如何解决呢?我尝试通过多种方式来做到这一点,但没有任何有效的示例。
简单的例子:当我将红色矩形从视图中拖出时(例如,拖到左上角),我希望视图随之移动。
codepen.io/dimabytes/pen/WNNORyZ
当指针移到屏幕外时,您必须移动图层坐标。假设您在更大的阶段中有一个层。
要知道如何更好地操纵图层坐标,这会很有用:https://konvajs.org/docs/sandbox/Canvas_Scrolling.html
要获得指针位置,您需要类似:
node.on('onDragMove', (e) => {
stageRef.getPointerPosition().x // That's your x position
stageRef.getPointerPosition().y // That's your y position
});
通过这两个方向,您应该能够找到解决问题的方法。