Canvas ES5画布鼠标向下拖动问题
我想用鼠标向下来检测你什么时候抓到了一件物品。 对于上下文,我在一个数组中有两个精灵,我可以在它们的边界框中检测到单击,它将正确地传递到mousedownHandler中 spArray[1]是我试图拖动的画布精灵。clickedBoundingBox工作正常Canvas ES5画布鼠标向下拖动问题,canvas,drag-and-drop,drag,ecmascript-5,mousedown,Canvas,Drag And Drop,Drag,Ecmascript 5,Mousedown,我想用鼠标向下来检测你什么时候抓到了一件物品。 对于上下文,我在一个数组中有两个精灵,我可以在它们的边界框中检测到单击,它将正确地传递到mousedownHandler中 spArray[1]是我试图拖动的画布精灵。clickedBoundingBox工作正常 function canvasMouseDownHandler(ev,ctx,spArray){ if (spArray[1].clickedBoundingBox(ev)){ console.log("Moused
function canvasMouseDownHandler(ev,ctx,spArray){
if (spArray[1].clickedBoundingBox(ev)){
console.log("Mousedown successful");
var mx = ev.offsetX;
var my = ev.offsetY;
spArray[1].x = Math.round(mx-spArray[1].width/2);
spArray[1].y = Math.round(my-spArray[1].height/2);
}
目前的情况是,它会立即捕捉到鼠标位置,并且不会保持拖动。通过控制台日志,我希望看到重复记录“mousedown successful”
我曾考虑使用setInterval函数将精灵捕捉到鼠标位置,但后来遇到了在mouseup上清除间隔的问题。我对事件还相当陌生,我正在努力理解这一点
非常感谢您的帮助。如果我理解正确,您希望在鼠标移动时触发
MouseDownHandler
,我不知道有哪种语言会这样
- 每次按下鼠标按钮时,MouseDown应该是一次性事件
- 就像鼠标按钮松开时,鼠标会弹出一次一样
- 应该有更频繁触发的MouseMove李>
拖动是鼠标向下和鼠标向下之间发生的每一个移动p如果我理解正确,您希望鼠标移动时触发
MouseDownHandler
,我不知道有哪种语言会这样做
- 每次按下鼠标按钮时,MouseDown应该是一次性事件
- 就像鼠标按钮松开时,鼠标会弹出一次一样
- 应该有更频繁触发的MouseMove李>
拖动是鼠标向下和鼠标向上之间发生的每一个移动