Я хотел бы связать два события вместе.
Прямо сейчас моя установка состоит в том, чтобы связать все необходимые действия мыши с холстом, а затем вызвать функцию-обертку, которая устанавливает положение мыши относительно холста. Затем функция-обертка вызывает правильное действие во внутренней функции. Я также хотел бы связать touchstart
touchmove
и touchend
Вот пример структуры того, что у меня есть
$('canvas').bind('mousedown mousemove mouseup', ev_canvas);
function ev_canvas (e) {
var pos = findPos(this);
e._x = e.pageX - pos.x;
e._y = e.pageY - pos.y;
var func = tool[e.type];
if (func) {
func(e);
}
}
tools.pen = function () {
tool.mousedown = function (e) {
//Stuff to do
};
tool.mousemove = function (e) {
//Stuff to do
};
tool.mouseup = function (e) {
//Stuff to do
};
}
Это вызывает правильный инструмент, а затем вызывает функцию мыши (вверх | вниз | двигаться) в зависимости от действия.
Есть ли способ привязать действия касания к тем, чтобы он мог вызывать одно или другое без копирования и вставки связки кода?