javascript - react中怎么增加键盘的事件
黄舟
黄舟 2017-04-11 10:15:02
[JavaScript讨论组]

整个页面,我需要通过键码来做一些事件,那我应该怎么加键盘事件呢??点击事件一般都是直接给到元素身上,但是键盘事件该给谁呢,

我的意思就是我点击方向键,页面的p会随着我的键盘的方向产生位移?请问这个怎么做???

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(2)
大家讲道理
let move = function(direction){
    switch(direction){
        case 'top':
            return {
                top:p.position.top--
            }
        case 'left':
            return {
                top:p.position.left--
            },
        case 'right':
            return {
                top:p.position.left++
            }
       case 'bottom':
            return {
                top:p.position.top++
            }
    }

}

document.addEventListener('keyup',function(e){
        switch(e.keyCode){
            case 38:
            //上
            move('top')
            break
            case 40
            //下
            move('bottom')
            break
            case 37
            //左
            move('left')
            break
            
            case 39
            move('right')
            break
            
            default:
            break
          
        }
 })
 
 
 
 大概类似与这样的把。p.position是你redux里的要移动物体的位置值。代码写的烂 不要直接复制用哈。
 最好用redux里面的action 写操作。
怪我咯

针对具体组件,当前组件必须处于被激活选中状态才生效

<App tabIndex={1} onKeyDown={this.handleKeyDown}>

第二种:

componentDidMount() {
   window.addEventListener('keydown', this.handleKeyDown)
}
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号