js键盘事件以及键盘事件拦截
一.键盘事件
-
onkeydown: 按下键盘时触发
-
onkeypress: 按下有值的键时触发
注意
:onkeypress
按下Ctrl
、Alt
、Shift
、Meta
这样无值的键,这个事件不会触发对于有值的键,按下时先触发 keydown 事件,再触发这个事件 -
onkeyup:松开键盘时触发该事件
二.组合键
-
ctrl相关
-
alt相关
-
meta (Mac键盘是一个四瓣的小花,Windows键盘是Windows键) 相关
-
shift相关
写一个举例其他都类似
比如ctrl+c
复制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事件
复制<script>
window.onkeydown=function (e) {
if (e.ctrlKey) {
if( e.key == 'h'){
console.log('ctrl+h')
e.preventDefault();
}
}
}
</script>
但是有些按键没法拦截具体为啥没有深究过也没用到过,比如 Chrome
复制CtrlN
CtrlShiftN
CtrlT
CtrlShiftT
CtrlW
CtrlShiftW
//没法拦截
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理