Javascript 画布拼图-在拼图的顶部无法识别触摸
我正在尝试在画布上为移动设备和标签设备制作一个拼图游戏 我试过的是这样的 现在,我在触摸未正确取下的碎片时遇到了一些问题 触摸仅在底部和下方可识别,而在形状上不可识别Javascript 画布拼图-在拼图的顶部无法识别触摸,javascript,html5-canvas,touch,Javascript,Html5 Canvas,Touch,我正在尝试在画布上为移动设备和标签设备制作一个拼图游戏 我试过的是这样的 现在,我在触摸未正确取下的碎片时遇到了一些问题 触摸仅在底部和下方可识别,而在形状上不可识别 mousemove = function(self, curHover) { return function(e) { e.preventDefault(); e = e.touches ? e.touches[0] : e;
mousemove = function(self, curHover) {
return function(e) {
e.preventDefault();
e = e.touches ? e.touches[0] : e;
self.lastX = self.x;
self.lastY = self.y;
curHover = self._curHover;
TOUCH_MOVE = true;
self.x = ((e && e.pageX - self._pos.x + 1 || window.event.offsetX + 1) - 1) / self.__zoom;
self.y = ((e && e.pageY - self._pos.y + 1 || window.event.offsetY + 1) - 1) / self.__zoom;
if (!self._clicked && USE_MOUSE_OVER_OUT) {
var shapeUnderCursor = getObjectUnderCursor(e, self);
if (shapeUnderCursor) {
if (curHover !== shapeUnderCursor) {
colectEvent(shapeUnderCursor, "mouseover", e, self);
if (curHover) {
colectEvent(curHover, "mouseout", e, self)
}
}
self._curHover = curHover = shapeUnderCursor
} else if (curHover) {
colectEvent(curHover, "mouseout", e, self);
self._curHover = curHover = null
}
}
if (curHover) {
colectEvent(curHover, "mousemove", e, self)
}
if (eventQueue.length) {
fireEvents(self, e)
}
}
},
mousedown = function(self) {
return function(e) {
if (!USE_MOUSE_OVER_OUT) {
self._curHover = getObjectUnderCursor(e, self)
}
var curHover = self._curHover,
which = mouseButtons[e.which || e.button];
self._clicked = true;
currentCanvas = self.cv;
self[which] = true;
if (curHover) {
colectEvent(curHover, "mousedown", e, self);
if (curHover !== self.focused) {
colectEvent(curHover, "focus", e, self);
if (self.focused) {
colectEvent(self.focused, "blur", e, self)
}
}
} else if (self.focused) {
colectEvent(self.focused, "blur", e, self);
self.focused = null
}
self.focused = curHover || null;
if (eventQueue.length) {
fireEvents(self, e)
}
self[which] = false
}
},