js监听键盘事件的方法_原生和jquery的区别详解
经常需要监听键盘的事件,以便做更好的操作,基本原理是:监听全局键盘,每一个键盘,当用户按下某一按键时,返回对应的键值,然后再判断用户按下了哪一科按键,键值对应按键的名称在最下面列出,自行比对。去以下介绍两种不同的方式
原生键盘监听事件:按下一次按键,分为三个过程,按下—按住—松开
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的区别详解全部内容了,希望大家多多支持我们~
相关推荐
-
js和jquery实现监听键盘事件示例代码
项目中要监听键盘组合键CTRL+C,以便做出对应的响应.查了一些方法但是其兼容性和稳定性不是很高,最终得到如下方法,经测试在Firfox.Chrome.IE中均可以使用. 一.使用javascript实现 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <script> function keyListener(e
-
js事件监听机制(事件捕获)总结
在前端开发过程中我们经常会遇到给页面元素添加事件的问题,添加事件的js方法也很多,有直接加到页面结构上的,有使用一些js事件监听的方法,由于各个浏览器对事件冒泡事件监听的机制不同,le浏览器只有事件冒泡,没有事件监听的机制,对于事件监听的兼容性问题是最大的难题: 1.直接把事件的方法写在页面结构上 function eventfun(){ //console.log(this); } <input type="button" onclick="eventfun()&qu
-
不要使用jQuery触发原生事件的方法
JavaScript 框架提供了如此多的功能,以至于一不小心就会掉进坑里去. 对工具库依赖得越多,在修改或维护时一个小小的改的很可能就会影响到其他的功能(俗称 处处是地雷,走路需谨慎),特别是维护多年前的遗留代码时. 我经常看到的一个错误是关于 jQuery的 trigger, trigger允许开发者手动触发某些事件. 这个功能真的非常强大与好用,但是请遵守约定,不要触发JS中那些原生的事件名称! 注:我知道,其他JS框架也提供这种功能 -- 我只用jQuery作为一个例子,因为我看到了它的受
-
js监听键盘事件的方法_原生和jquery的区别详解
经常需要监听键盘的事件,以便做更好的操作,基本原理是:监听全局键盘,每一个键盘,当用户按下某一按键时,返回对应的键值,然后再判断用户按下了哪一科按键,键值对应按键的名称在最下面列出,自行比对.去以下介绍两种不同的方式 原生键盘监听事件:按下一次按键,分为三个过程,按下-按住-松开 onkeydown:某个键被按下 onkeypress:某个键盘的键被按下或按住 onkeyup:某个键盘的键被松开 使用方法,一般来说,键盘监听是直接在整个页面文档上进行监听的,也就是document上 以下是原生的
-
对vue下点击事件传参和不传参的区别详解
如下所示: <div id = 'app'> <p><button @click = 'test_click1'>{{btn_text1}}</button></p> <br> <p><button @click = 'test_click2("123")'>{{btn_text2}}</button></p> </div> <script src=
-
Python requests.post方法中data与json参数区别详解
在通过requests.post()进行POST请求时,传入报文的参数有两个,一个是data,一个是json. data与json既可以是str类型,也可以是dict类型. 区别: 1.不管json是str还是dict,如果不指定headers中的content-type,默认为application/json 2.data为dict时,如果不指定content-type,默认为application/x-www-form-urlencoded,相当于普通form表单提交的形式 3.data为s
-
js监听键盘事件示例代码
复制代码 代码如下: <script type="text/javascript" language=JavaScript charset="UTF-8"> var isPiss=0; document.onkeydown=function(event){ var e = event || window.event || arguments.callee.caller.arguments[0]; if(e && e.keyCode==27
-
vue监听键盘事件的快捷方法【推荐】
在我们的项目经常需要监听一些键盘事件来触发程序的执行,而Vue中允许在监听的时候添加关键修饰符: <input v-on:keyup.13="submit"> 对于一些常用键,还提供了按键别名: <input @keyup.enter="submit"> <!-- 缩写形式 --> 全部的按键别名: .enter .tab .delete (捕获"删除"和"退格"键) .esc .s
-
使用JS监听键盘按下事件(keydown event)
1.监听全局键盘按下事件,例如监听全局回车事件 $(document).keydown(function(event){ if(event.keyCode == 13){ alert('你按下了Enter'); } }); 2.监听某个组件键盘按下事件,例如监听id为btn的button组件的回车按下事件 $("#btn").keydown(function(event){ if(event.keyCode==13){ alert('你按下了Enter'); } }); 3.如果是要监
-
vue监听键盘事件的相关总结
按键修饰符 在监听键盘事件时,我们经常需要检查详细的按键.Vue 允许为 v-on 在监听键盘事件时添加按键修饰符: <!-- 只有在 `key` 是 `Enter` 时调用 `vm.submit()` --> <input v-on:keyup.enter="submit"> 你可以直接将 KeyboardEvent.key 暴露的任意有效按键名转换为 kebab-case 来作为修饰符. <input v-on:keyup.page-down=&quo
-
iOS应用开发中监听键盘事件的代码实例小结
1.注册监听键盘事件的通知 复制代码 代码如下: [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification
-
JavaScript监听键盘事件代码实现
在写网页的时候,常常需要监听键盘事件,让我们来看看如何实现吧. 监听方式 键盘事件往往是全局监听,设监听的函数为keyboard(). keyup事件类型.该类型触发条件为按键按下去并松开. //长按并松开只触发一次 document.addEventListener('keyup', keyboard); document.onkeyup = keyboard; //记得不要加括号! keydown事件类型.该类型触发条件为按键按下去. //长按可以触发多次 document.addEvent
随机推荐
- VMware 12中CentOS 6.5 64位安装配置教程
- 用vbscript实现将脚本的输出复制到剪贴板
- Windows和 Linux下生成以当前时间命名文件的方法
- php 调试利器debug_print_backtrace()
- H5图片压缩与上传实例
- js常用代码段收集
- Apache伪静态Rewrite详解
- Jquery判断radio、selelct、checkbox是否选中及获取选中值方法总结
- c#汉诺塔的递归算法与解析
- 详解C#中的System.Timers.Timer定时器的使用和定时自动清理内存应用
- PHP 设计模式系列之 specification规格模式
- 交换技术攻略网络交换机配置技巧中
- MyEclipse+Tomcat+MAVEN+SVN项目完整环境搭建(图文教程)
- angularJS实现动态添加,删除div方法
- ASP.NET Core如何添加统一模型验证处理机制详解
- java实现肯德基收银系统
- 易语言添加软件背景音乐的方法
- Pandas之MultiIndex对象的示例详解
- 全面了解django的缓存机制及使用方法
- 解决vscode中golang插件依赖安装失败问题