Я играл с холстом html5 и столкнулся с проблемой.HTML5 Canvas: Как обрабатывать mousedown mouseup mouseclick
canvas.onmousedown = function(e){
dragOffset.x = e.x - mainLayer.trans.x;
dragOffset.y = e.y - mainLayer.trans.y;
canvas.onmousemove = mouseMove;
}
canvas.onmouseup = function(e){
canvas.onmousemove = null;
}
canvas.onmouseclick = mouseClick;
function mouseMove(e){
mainLayer.trans.x = e.x - dragOffset.x;
mainLayer.trans.y = e.y - dragOffset.y;
return false;
}
function mouseClick(e){
// click action
}
В этом коде я делаю щелчок мышью + перетащить панораму на холсте, переведя на смещение перетаскивания. Но у меня также есть событие click. Прямо сейчас, всякий раз, когда я перетаскиваю мышь и отпускаю ее, она запускается как onmouseup, так и onclick.
Есть ли какие-либо приемы, чтобы сделать их уникальными?
Проверьте это! http://stackoverflow.com/questions/7224175/html5-canvas-mouse/11027438#11027438 – zi0408