17.4用键盘设置贪吃蛇的方向

  接下来,编写代码让玩家使用键盘来设置贪吃蛇的方向。我们将添加一个keydown事件处理程序,它检测何时按下一个箭头键,并且将贪吃蛇的方向设置为与该键一致。

17.4.1 添加keydown事件处理程序

  以下代码处理键盘事件:

《javascript-少儿编程》第17章开发贪吃蛇游戏2之用键盘设置贪吃蛇的方向

  在❶处,创建了一个对象,它将箭头按键的代码转换为字符串,该字符串表现了箭头所代表的方向(这个对象和我们在15.2.7小节中所使用的keyActions对象类似)。在❷处,向boby元素上的keydown事件附加一个事件处理程序。当用户按下一个按键的时候,将会调用该事件处理程序(只要先要Web页面的范围单击它们)。

  这个事件处理程序首先将事件的按键代码转换为一个方向字符串,然后,将字符串存储到newDirection变量中。如果按键代码不是37、38、39或40(这是我们所关注的箭头按键的代码),directions[event.keyCode]将会是undefined。

  在❸处,查看newDirection是不是undefined。如果它不是undefined,在贪吃蛇上调用setDirection方法,传入setDirection字符串(由于这个在if语句中没有else的情况,如果setDirection是undefined,那么,只是忽略按键按下)。

  这段代码无效,因为没有在贪吃蛇上定义setDirection方法。我们现在来做这件事情。


本站内容未经许可,禁止任何网站及个人进行转载。

   口袋儿题库-青少儿编程自测题库