js监听键盘事件的方法_原生和jquery的区别详解


Posted in Javascript onOctober 10, 2016

经常需要监听键盘的事件,以便做更好的操作,基本原理是:监听全局键盘,每一个键盘,当用户按下某一按键时,返回对应的键值,然后再判断用户按下了哪一科按键,键值对应按键的名称在最下面列出,自行比对。去以下介绍两种不同的方式

原生键盘监听事件:按下一次按键,分为三个过程,按下—按住—松开

onkeydown:某个键被按下
onkeypress:某个键盘的键被按下或按住
onkeyup:某个键盘的键被松开

使用方法,一般来说,键盘监听是直接在整个页面文档上进行监听的,也就是document上

以下是原生的使用案例

//实际使用 
document.onkeydown=function(e){  //对整个页面文档监听 
var keyNum=window.event ? e.keyCode :e.which;  //获取被按下的键值 
//判断如果用户按下了回车键(keycody=13)
if(keyNum==13){ 
alert('您按下了回车'); 
} 
 
//判断如果用户按下了空格键(keycode=32), 
if(keyNum==32){ 
   alert('您按下了空格'); 
  }

剩下另外两个按键方法同理

jquery的方式监听键盘事件

jquery的也分为三个过程,但是在事件名称上有所不同

keyup:某个键盘的键被松开

keydown:某个键被按下

keypress:某个键盘的键被按下或按住

使用方法:

$(document).keyup(function(event){ 
       switch(event.keyCode) { 
       case 27: 
       alert('您按下了回车'); 
       return; 
       case 13: 
       alert('您按下了空格'); 
       return; 
     
       } 
 });

小总结:总体来说,这两种方式达到的效果都是一样的,只是由于jquery的获取对象更加简单,所以一般更推介使用jquery,当然,如果你有jquery基础的话。

以上就是小编为大家带来的js监听键盘事件的方法_原生和jquery的区别详解全部内容了,希望大家多多支持三水点靠木~

Javascript 相关文章推荐
让你的CSS像Jquery一样做筛选的实现方法
Jul 10 Javascript
仿新浪微博返回顶部的jquery实现代码
Oct 01 Javascript
jQuery-serialize()输出序列化form表单值的方法
Dec 26 Javascript
在Node.js中实现文件复制的方法和实例
Jun 05 Javascript
第八篇Bootstrap下拉菜单实例代码
Jun 21 Javascript
Bootstrap 布局组件(全)
Jul 18 Javascript
Bootstrap面板(Panels)的简单实现代码
Mar 17 Javascript
JS脚本加载后执行相应回调函数的操作方法
Feb 28 Javascript
详解Vue的常用指令v-if, v-for, v-show,v-else, v-bind, v-on
Oct 12 Javascript
vue动态绑定class选中当前列表变色的方法示例
Dec 19 Javascript
配置一个vue3.0项目的完整步骤
Apr 26 Javascript
微信小程序弹窗禁止页面滚动的实现代码
Dec 30 Javascript
js 弹出虚拟键盘修改密码的简单实例
Oct 10 #Javascript
js捕捉键盘事件和按键键值的方法
Oct 10 #Javascript
js中获取键盘事件的简单实现方法
Oct 10 #Javascript
轻松实现jquery选项卡切换效果
Oct 10 #Javascript
为jQuery-easyui的tab组件添加右键菜单功能的简单实例
Oct 10 #Javascript
Javascript生成带参数的二维码示例
Oct 10 #Javascript
详细讲解JavaScript中的this绑定
Oct 10 #Javascript
You might like
不错的PHP学习之php4与php5之间会穿梭一点点感悟
2007/05/03 PHP
使用php显示搜索引擎来的关键词
2014/02/13 PHP
ThinkPHP上使用多说评论插件的方法
2014/10/31 PHP
删除PHP数组中的重复元素的实现代码
2017/04/10 PHP
PHP序列化和反序列化深度剖析实例讲解
2020/12/29 PHP
url 特殊字符 传递参数解决方法
2010/01/01 Javascript
document.createElement()用法及注意事项(ff下不兼容)
2013/03/13 Javascript
jquery ajax属性async(同步异步)示例
2013/11/05 Javascript
js查找某元素中的所有图片地址的方法
2014/01/16 Javascript
动态加载iframe时get请求传递中文参数乱码解决方法
2014/05/07 Javascript
jquery处理页面弹出层查询数据等待操作实例
2015/03/25 Javascript
在Mac OS下使用Node.js的简单教程
2015/06/24 Javascript
JavaScript代码性能优化总结篇
2016/05/15 Javascript
AngularJs定制样式插入到ueditor中的问题小结
2016/08/01 Javascript
详解Node.js如何开发命令行工具
2016/08/14 Javascript
Angularjs中controller的三种写法分享
2016/09/21 Javascript
bootstrap按钮插件(Button)使用方法解析
2017/01/13 Javascript
JavaScript 栈的详解及实例代码
2017/01/22 Javascript
小程序开发基础之view视图容器
2018/08/21 Javascript
jQuery+PHP实现上传裁剪图片
2020/06/29 jQuery
vue路由教程之静态路由
2019/09/03 Javascript
Vue基本指令实例图文讲解
2021/02/25 Vue.js
Python IDE PyCharm的基本快捷键和配置简介
2015/11/04 Python
Tensorflow之构建自己的图片数据集TFrecords的方法
2018/02/07 Python
Python中将dataframe转换为字典的实例
2018/04/13 Python
PyQt5每天必学之滑块控件QSlider
2018/04/20 Python
python序列类型种类详解
2020/02/26 Python
python 爬虫基本使用——统计杭电oj题目正确率并排序
2020/10/26 Python
教你一分钟在win10终端成功安装Pytorch的方法步骤
2021/01/28 Python
HTML5中的Article和Section元素认识及使用
2013/03/22 HTML / CSS
详解Canvas实用库Fabric.js使用手册
2019/01/07 HTML / CSS
工作表现评语
2014/01/19 职场文书
庆八一活动方案
2014/01/25 职场文书
大学毕业感言200字
2014/03/09 职场文书
小学2016年“我们的节日·重阳节”活动总结
2016/04/01 职场文书
nginx sticky实现基于cookie负载均衡示例详解
2022/12/24 Servers