본문 바로가기
JavaScript

07 -2 키보드 이벤트로 별 이동하기

by yj.yoon 2022. 6. 27.

자바스크립트 키보드 이벤트 - keydown을 사용해 별 움직이기

이벤트를 받아올 때 앱은 event.nativeEvent를 사용하는데 웹에서는 event.keyCode와 같은 형식으로 쓰나보다.

 

 

<script>
    document.addEventListener('DOMContentLoaded', () => {

        const star = document.querySelector('h1')
        star.style.position = 'absolute'

        let [x, y] = [0, 0]
        const block = 20
        const print = () => {
            star.style.left = `${x * block}px`
            star.style.top = `${y * block}px`
        }

        const [left, up, right, down] = [37, 38, 39, 40] // 방향키를 쉽게 이용할 수 있도록 변수를 사용해 이름을 붙임
        document.body.addEventListener('keydown', (event) => {
            switch (event.keyCode) {
                case left:
                    x -= 1
                    break
                case up:
                    y -= 1
                    break
                case right:
                    x += 1
                    break
                case down:
                    y += 1
                    break
            }
            print()
            })
        })
</script>
<body>
    <h1>*</h1>
</body>