제목이 얼마나 막연한 지 미안하지만, 내가 묻는 것을 요약하는 방법을 완전히 모르겠습니다.HTML5 캔버스 그리기 및 업데이트
첫째로, 여기 내가 지금까지 가지고있는 것의 jsFiddle입니다.
js OOP를 사용하는 것뿐만 아니라 HTML5 캔버스 요소를 사용하는 법을 배우기 시작했습니다.
바이올린에서 볼 수 있듯이 사각형 클래스를 만들면 중복되도록 생각할 수도 있지만되도록 많은 사각형을 만들 수 있습니다. 그리면 참조 할 수 있습니다. 그러나 height = width
을 설정하면 항상 비 정사각형이됩니다. 나는 캔버스를 사용하는 것에 비교적 익숙하지만 사각형의 높이와 너비가 캔버스 요소의 크기에 비례하므로 캔버스 요소의 높이와 너비가 비례해서는 안되기 때문에 (그 반대의 경우 할당 된 백분율 값이므로 명확한 픽셀로).
사각형의 크기를 픽셀로 설정하여 문제를 해결할 수 있지만 키 누르기 이벤트가 호출되면 사각형이 전혀 움직이지 않습니다.
또한 사용자가 키 누르기 이벤트를 사용하여 화살표 키로 사각형을 이동할 수 있습니다. 그러나 위/아래 키 값은 코드에서 반전시킬 때도 반전 된 것처럼 보입니다. 그리고 왼쪽/오른쪽 키는 아무 것도하지 않습니까?
그리고 광장을 한 번 위/아래로 움직일 수 있습니까? 사용자 코드가 해당 버튼을 계속 누르고있는 한 내 코드에서 x/y 값을 늘릴 수 있어야합니까?
누군가가 이것을 점검하고 제가 잘못하고있는 것에 관해 어떤 조언을 해줄 수 있다면, 좋을 것입니다! 나는 이것에 많은 새로운 것을 시도하고 있습니다. 학습 경험으로, 그렇게 생각한다면, 배울 수 있도록 도와주세요!
'canvas'가 지원되지 않으면'can' 태그를 열거 나 닫는 태그 안에있는 내용이 표시되기 때문에 else 문도 필요 없습니다. –
감사합니다! 그것은 완벽하게 작동합니다. 사용자가 반복적으로 키를 눌러서 사각형을 움직여야하기 때문에'.keyup'을 사용하는 데 큰 팬이 아니지만, 키를 계속 누르고있을 수 있습니다. –
@Jordan Foreman : http://jsfiddle.net/DqrEm/6/을보십시오. 플래그를 설정하고 간격을 실행하면 부드러운 애니메이션을 만들 수 있습니다. 또한 동시 키는 그렇게 할 수 있습니다. – pimvdb