前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >js键盘事件以及键盘事件拦截

js键盘事件以及键盘事件拦截

作者头像
小小咸鱼YwY
发布2020-06-19 15:28:45
6.1K0
发布2020-06-19 15:28:45
举报
文章被收录于专栏:python-爬虫python-爬虫

一.键盘事件

  • onkeydown: 按下键盘时触发
  • onkeypress: 按下有值的键时触发 注意: onkeypress按下 CtrlAltShiftMeta 这样无值的键,这个事件不会触发对于有值的键,按下时先触发 keydown 事件,再触发这个事件
  • onkeyup:松开键盘时触发该事件

二.组合键

  • ctrl相关
  • alt相关
  • meta (Mac键盘是一个四瓣的小花,Windows键盘是Windows键) 相关
  • shift相关

写一个举例其他都类似

比如ctrl+c

代码语言:javascript
复制
window.onkeydown=function (e) {
    if (e.ctrlKey) {     //其他几个类似shiftkey,altkey,metakey
        if( e.key == 'c'){     //这里最好用keycode可以无视大小写,你要是区分大小写最好这样写
            console.log('ctrl+c')
        }
    }
}

//一般简写
window.onkeydown=function (e) {
    if (e.ctrlKey&&e.key == 'c'){console.log('ctrl+c')}
}

三.拦截preventDefault

比如拦截ctrl+h事件

代码语言:javascript
复制
<script>
    window.onkeydown=function (e) {
        if (e.ctrlKey) {
                if( e.key == 'h'){
                    console.log('ctrl+h')
                    e.preventDefault();
                }
        }
    }
</script>

但是有些按键没法拦截具体为啥没有深究过也没用到过,比如 Chrome

代码语言:javascript
复制
CtrlN
CtrlShiftN
CtrlT
CtrlShiftT
CtrlW
CtrlShiftW
//没法拦截
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-11-21 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一.键盘事件
  • 二.组合键
  • 三.拦截preventDefault
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档