2012-02-09 2 views
0

나는이 게임이 HTML 5 캔버스에서 캐릭터를 움직이기위한 스크립트를 가지고 있습니다. 마우스가 양쪽에서 감지되면 캐릭터를 이동시키는 함수를 호출합니다. 모바일 장치에서 터치 제스처를 사용하려면 어떻게해야합니까?터치 컨트롤을위한 마우스 이동 스왑

document.onmousemove = function(e){ 
    if (player.X + c.offsetLeft > e.pageX) { 
     player.moveLeft(); 
    } else if (player.X + c.offsetLeft < e.pageX) { 
     player.moveRight(); 
    } 
} 

답변

1

스와핑을 사용하지 않는 것이 좋습니다. 대신 터치 이벤트에 대한 핸들러를 추가하고 해당 이벤트를 핸들러가 이해할 수있는 무언가로 변환하십시오.

그래서 예를 들어, 이벤트의 screenXscreenY pageXpageY에를 변환하는 ontouchmove 처리기를 추가하고 기존 onmousemove 핸들러를 호출합니다. 모바일 Safari를 실행하는 경우는 handling events from iOS devices입니다. 다른 장치/브라우저를 처리하기 위해 추가 번역을 추가해야 할 것입니다.

+0

환호, 일종의 일종, 조금 움직이지만 그때는 멈췄다. touchend 때까지 루프를 반복하는 방법을 알아야합니다. –

+0

플래그와'setTimeout' 루프가 작동 할 것입니다. 뭔가'functionLoop() {document.onmousemove (touchPoint); if (flag) setTimeout (movementLoop, 100); }' – aroth

+0

다음과 같이하면됩니다. http://ross.posterous.com/2008/08/19/iphone-touch-events-in-javascript/ –