我正在使用jquery和Hammer.js检测用户的操纵杆运动。在这里,我试图在panstart事件上每100ms运行一次函数,并希望停止在panend事件上运行该函数。这是我尝试过的:
mc.on("panmove", function(ev) {
updateJostick(coords.x, -coords.y);
});
mc.on("panend", function(ev) {
updateJostick(0, 0);
clearTimeout(joyTime);
});
function updateJostick(xCor ,yCor ){
xCor = 10 * xCor;
yCor = 10 * yCor;
console.log("x=" + xCor);
console.log("y=" + yCor);
joyTime = setTimeout(updateJostick, 100);
}
现在问题出在panend事件上,updateJostick
函数不会停止并继续重复自身。
我还尝试将joyTime = setTimeout(updateJostick, 500);
移至panmove函数。在这种情况下,按住鼠标不重复该功能。
如何停止在panend事件上再次运行功能?