自从威少砍下45+11+11的大号三双之后,网上出现了各种各样的神级段子,有一条是这样的:
威少:Hey,哥们,最近过得咋样!
浓眉:对方开启了好友验证,请先添加对方为好友
威少:。。。。。。
JRS:2333333
看到了一条比赛当天的数据统计:威少45+11+11,杜少32+8+3,伊巴卡19+11+2,雷吉杰克逊17+3+6,哈登16+6+16,雷霆管理层真应该改名雷锋管理层了,现在对雷霆管理层的每日一轮都是JRS们的常态了。
好了,不扯,接着上一篇博客(H5坦克大战之画出坦克http://www.cnblogs.com/zhouhuan/p/H5_tankgame.html),这一篇来看看怎么响应玩家的操作让坦克进行相应的移动。
1. 了解keydown事件
keydown这一键盘事件的触发条件为按下键盘上的任意键,如果按住不放,则会重发触发。
示例:
window.onkeydown = function(){
alert("Merry Christmas!");
};此时载入页面之后,无论按下哪个键,都会弹出“Merry Christmas!”的弹窗。
2. 了解键码和字符编码
① 键码
在发生keydown和keyup事件时,event对象的keyCode(键码)属性会包含一个代码,与键盘上一个特定的键对应。对于数字字母字符集,keyCode属性的值与ASCII码中对应小写字母或数字的编码相同。字母中的大小写不影响。
window.onkeydown = function(eve){
alert(eve.keyCode);
};此时按键盘上的任意键,便可得到所按键对应的keyCode
② 字符编码
发生keypress事件时,event对象的charCode属性会包含一个值,这个值就是按下的那个键所代表字符的ASCII编码,并且,同一个字母的大小写对应的字符编码也是不一样的。
要注意的是,keypress事件只有在按下字符键时才会触发,并不是所有的按键,像Ctrl, Alt之类的就不会触发该事件。
3. 热身环节
① 获取玩家的指令
我们先看看怎么获取到玩家的操控指令,这里我们写一段代码:
window.onkeydown = function(eve){
alert("所按键对应的键码是: " + eve.keyCode);
};大家运行一下就可以知道键盘上每一个按键所对应的键码是多少了,然后取自己需要的按键继续编写程序。这里需要的是方向键的上下左右,当然这个在网上可以查到,也非常方便。
我们运行了之后会发现,上下左右对应的键码分别是38, 40, 37, 39。考虑到有些玩家习惯于使用W A S D来操作,那我们把这几个键也做进去,这几个键对应的键码分别是87, 65, 83, 68。
OK,知道了上面这些东西之后我们就可以写出下面这段代码了:
网友评论

