天天看点

touchmove时鼠标点击的位置调整

平时用H5做小游戏时,经常会用到 addEventListener("touchmove",touch),在鼠标或手势 移动的时候,如果遇到比较大的素材,需要调整鼠标或手势在素材上的位置。

只需要在touches获取的值进行加减即可,再把改变后的值进行渲染

curX = e.touches[0].pageX - 90;   //改变移动是手的位置
        curY = e.touches[0].pageY - 90;   //改变移动是手的位置

        $("#touch").css({
            "left": curX,
            "top": curY
        });
           
另外,最好做移动的边界判断处理,使用改变后的X和Y值,通过加减数字来控制想要的边界范围      
curX = curX < 50 ? 50 : curX;
        curY = curY < 50 ? 50 : curY;
        curX = curX < document.documentElement.clientWidth - 50 ? curX : document.documentElement.clientWidth - 50;
        curY = curY < document.documentElement.clientHeight - 50 ? curY : document.documentElement.clientHeight - 50;