Cocos2d-JS键盘事件

Cocos2d-JS中的键盘事件与触摸事件不同,它没有空间方面信息。键盘事件不仅可以响应键盘,还可以响应设备的菜单。
键盘事件是EventKeyboard,对应的键盘事件监听器(cc.EventListener.KEYBOARD),键盘事件响应属性:
onKeyPressed。当键按下时回调该属性所指定函数。
onKeyReleased。当键抬起时回调该属性所指定函数。
使用键盘事件处理的代码片段如下:

[html] view plaincopy

  1. onEnter: function () {
  2. this._super();
  3. cc.log("HelloWorld onEnter");
  4. cc.eventManager.addListener({   ①
  5. event: cc.EventListener.KEYBOARD,   ②
  6. onKeyPressed:  function(keyCode, event){    ③
  7. cc.log("Key with keycode " + keyCode + " pressed");
  8. },
  9. onKeyReleased: function(keyCode, event){    ④
  10. cc.log("Key with keycode " + keyCode + " released");
  11. }
  12. }, this);
  13. },
  14. onExit: function () {
  15. this._super();
  16. cc.log("HelloWorld onExit");
  17. cc.eventManager.removeListeners(cc.EventListener.KEYBOARD); ⑤
  18. }

上述代码第①行cc.eventManager.addListener是通过快捷方式注册事件监听器对象。第②行代码是设置键盘事件cc.EventListener.KEYBOARD。第③行代码是设置键盘按下属性onKeyPressed,其中的参数keyCode是按下的键编号。第④行代码是设置键盘抬起属性onKeyReleased。
上述onExit()函数是退出层时候回调,我们在代码第⑤行注销所有键盘事件的监听。
我们可以使用Cocos Code IDE和WebStorm工具进行测试,输出的结果如下:

[html] view plaincopy

  1. JS: Key with keycode 124 released
  2. JS: Key with keycode 124 pressed
  3. JS: Key with keycode 139 pressed
  4. JS: Key with keycode 139 released
  5. JS: Key with keycode 124 released
  6. JS: Key with keycode 139 pressed
  7. JS: Key with keycode 124 pressed
  8. JS: Key with keycode 139 released
  9. JS: Key with keycode 124 released
  10. JS: Key with keycode 139 pressed
  11. JS: Key with keycode 124 pressed
  12. JS: Key with keycode 139 released
  13. JS: Key with keycode 124 released

更多内容请关注最新Cocos图书《Cocos2d-x实战:JS卷——Cocos2d-JS开发》

本书交流讨论网站:http://www.cocoagame.net

欢迎加入Cocos2d-x技术讨论群:257760386

更多精彩视频课程请关注智捷课堂Cocos课程:http://v.51work6.com

智捷课堂现推出Cocos会员,敬请关注:http://v.51work6.com/courseInfoRedirect.do?action=netDetialInfo&courseId=844465&categoryId=0

《Cocos2d-x实战 JS卷》现已上线,各大商店均已开售:

京东:http://item.jd.com/11659698.html

欢迎关注智捷iOS课堂微信公共平台,了解最新技术文章、图书、教程信息

时间: 2024-08-07 08:25:01

Cocos2d-JS键盘事件的相关文章

笔记-[2]-JS键盘事件.

键盘事件主要有两种: onkeydown:当键盘按下的时候触发 onkeyup:当键盘按键抬起的时候触发 例子: <script type="text/javascript"> window.onload=function(){ var oTxt=document.getElementById('txt'); oTxt.onkeyup=function(ev){ var ev=ev || window.event; if(ev.keyCode==13 &&

js 键盘事件

<script type="text/javascript" language=JavaScript charset="UTF-8"> document.onkeydown=function(event){ var e = event || window.event || arguments.callee.caller.arguments[0]; if(e && e.keyCode==27){ // 按 Esc //要做的事情 } if(

js键盘事件全面控制详解

js键盘事件全面控制 主要分四个部分第一部分:浏览器的按键事件第二部分:兼容浏览器第三部分:代码实现和优化第四部分:总结 第一部分:浏览器的按键事件 用js实现键盘记录,要关注浏览器的三种按键事件类型,即keydown,keypress和keyup,它们分别对应onkeydown. onkeypress和onkeyup这三个事件句柄.一个典型的按键会产生所有这三种事件,依次是keydown,keypress,然后是按键释放时候的keyup. 在这3种事件类型中,keydown和keyup比较底层

Js键盘事件全面控制,回车按键事件,键盘对应按键码,按键事件兼容各个浏览器。

作者:827969653 在网上查询的按键码如下: 一.键盘按键和键盘对应代码表:   字母按键码A <--------> 65 B <--------> 66 C <--------> 67 D <--------> 68 E <--------> 69 F <--------> 70 G <--------> 71 H <--------> 72 I <--------> 73 J <--

js键盘事件和焦点事件

键盘事件onkeydown //当键盘按下的时候触发onkeyup //但键盘抬起的时候触发event.keyCode //数字类型 键盘按键的键值功能键 ctrlkey shiftkey altkey //返回的是布尔值 不是所有元素都能接收键盘事件,能够响应用户输入的元素,能够坚守焦点的元素就能接收键盘事件 document是可以接收键盘事件的 焦点:使浏览器能够区分用户输入的对象:当一个元素有焦点的时候,那么他就可以接收用户的输入.我们可以通过一些方式给元素设置焦点 1 点击 2 tab键

关于js键盘事件的例子

JavaScript onkeydown 事件 用户按下一个键盘按键时会触发 onkeydown 事件.与 onkeypress事件不同的是,onkeydown 事件是响应任意键按下的处理(包括功能键),onkeypress 事件只响应字符键按下后的处理. 提示 Internet Explorer/Chrome 浏览器使用 event.keyCode 取回被按下的字符,而 Netscape/Firefox/Opera 等浏览器使用 event.which. onkeydown 获取用户按下的键

js键盘事件全面控制

主要分四个部分第一部分:浏览器的按键事件第二部分:兼容浏览器第三部分:代码实现和优化第四部分:总结 第一部分:浏览器的按键事件 用 js实现键盘记录,要关注浏览器的三种按键事件类型,即keydown,keypress和keyup,它们分别对应onkeydown. onkeypress和onkeyup这三个事件句柄.一个典型的按键会产生所有这三种事件,依次是keydown,keypress,然后是按键释放时 候的keyup. 在这3种事件类型中,keydown和keyup比较底层,而 keypre

js 键盘事件(onkeydown、onkeyup、onkeypress)

onkeypress 这个事件在用户按下并放开任何字母数字键时发生.系统按钮(例如,箭头键和功能键)无法得到识别. onkeyup 这个事件在用户放开任何先前按下的键盘键时发生. onkeydown 这个事件在用户按下任何键盘键(包括系统按钮,如箭头键和功能键)时发生. 总结: onkeydown 的使用范围大于onkeypress 原文地址:https://www.cnblogs.com/xuwebdesign/p/10398209.html

利用js键盘事件制作会移动效果

会移动的方块 描述 按键盘上的方向键方块会移动,按住alt键和方向键进行大幅度移动 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>会移动的方块(按方向键或alt加方向键)</title> <style> * {margin: 0;padding: 0;} div {width: 200px;

JS键盘事件

<script type="text/javascript" language=JavaScript charset="UTF-8"> document.onkeydown=function(event){ var e = event || window.event || arguments.callee.caller.arguments[0]; if(e && e.keyCode==27){ // 按 Esc //要做的事情 } if(