一、首先需要知道的是:

  1、keydown() keydown事件会在键盘按下时触发.

  2、keyup()

    keyup事件会在按键释放时触发,也就是你按下键盘起来后的事件

  3、keypress()

    keypress事件会在敲击按键时触发,我们可以理解为按下并抬起同一个按键

二、获得键盘上对应的ascII码:

  $(document).keydown(function(event){

    console.log(event.keyCode);

  });

  tips: 上面例子中,event.keyCode就可以帮助我们获取到我们按下了键盘上的什么按键,他返回的是ascII码,比如说上下左右键,分别是38,40,37,39;

三、实例(当按下键盘上的左右方面键时)

  $(document).keydown(function(event){

    //判断当event.keyCode 为37时(即左方面键),执行函数to_left();

    //判断当event.keyCode 为39时(即右方面键),执行函数to_right();

    if(event.keyCode == 37){

      //do somethings;

    }else if (event.keyCode == 39){

      //do somethings;

    }

  });

实例研究:

比如:小说网站中常见的按左右键来实现上一篇文章和下一篇文章;按ctrl+回车实现表单提交;google reader和有道阅读中的全快捷键操作...(以此提高用户体验)

如果我们要实现ctrl+Enter就是ctrl+回车提交表单,可以这样:

$(document).keypress(function(e) {

  if (e.ctrlKey && e.which == 13)

  $("form").submit();

})

//键盘操作

$(document).keydown(function(event){

  var e = event || window.event;

  var k = e.keyCode || e.which;

  switch(k) {

    case 37:

    //…

    break;

    case 39:

    //…

    break;

  }

    return false;

});

jQuery监听键盘事件及相关操作使用教程的更多相关文章

  1. jQuery监听键盘事件及相关操作使用

    一.首先需要知道的是: 1.keydown() keydown事件会在键盘按下时触发. 2.keyup() keyup事件会在按键释放时触发,也就是你按下键盘起来后的事件 3.keypress() k ...

  2. 第一百七十一节,jQuery,高级事件,模拟操作,命名空间,事件委托,on、off 和 one

    jQuery,高级事件,模拟操作,命名空间,事件委托,on.off 和 one 学习要点: 1.模拟操作 2.命名空间 3.事件委托 4.on.off 和 one jQuery 不但封装了大量常用的事 ...

  3. vue如何监听键盘事件中的按键?

    原文地址 背景 在一些搜索框中,我们往往需要监听键盘的按下(onkeydown)或抬起(onkeyup)事件以进行一些操作.在原生js或者jQuery中,我们需要判断e.keyCode的值来获取用户所 ...

  4. 前端学习笔记(zepto或jquery)——对li标签的相关操作(二)

    对li标签的相关操作——8种方式获取li标签的第一个元素的内容 1.alert($("ul>li").first().html());2.alert($('ul>li' ...

  5. js监听键盘事件

    用JS监听键盘按下事件(keydown event)   1.监听全局键盘按下事件,例如监听全局回车事件 1 $(document).keydown(function(event){ 2 if(eve ...

  6. python 监听键盘事件pyHook

    #coding=utf- import pyHook import pythoncom # 监听到鼠标事件调用 def onMouseEvent(event): if(event.MessageNam ...

  7. 前端学习笔记(zepto或jquery)——对li标签的相关操作(五)

    对li标签的相关操作——has与find的差异性 demo代码: <ul> <li><p>1</p></li> <li>2< ...

  8. 前端学习笔记(zepto或jquery)——对li标签的相关操作(四)

    对li标签的相关操作——五种方式给奇数项li标签设置样式 demo演示: 1 2 3 4 5 6 7 // 详解: 通常我们为多个li添加样式时常用的是使用filter,但我们在第三节中可以看到fil ...

  9. 前端学习笔记(zepto或jquery)——对li标签的相关操作(三)

    对li标签的相关操作——八种方式遍历li标签并获取其值 $("ul>li").forEach(function(item,index){ alert(index+" ...

随机推荐

  1. java-io-FileReader和FileWriter类

    实例:用FileWriter类向文件中写入一个串字符,然后用FileReader读出写入的内容. import java.io.*; public class FileStream2{ public ...

  2. java.net.URL请求远程文件下载

    1:浏览器请求下载 public void listStockcodeUplaod(HttpServletRequest req, HttpServletResponse res) throws Ex ...

  3. 关于selenium 3.0 + python 3.5中多层框架或窗口的定位driver.switch_to_frame()

    针对selenium3 中的窗口定位会自动划掉,不起作用 现在换成 driver.switch_to.frame()就会不报错了

  4. 【USACO 2.2】Preface Numbering (找规律)

    求 1-n 的所有罗马数字表达中,出现过的每个字母的个数. 分别对每个数的罗马表达式计算每个字母个数. 对于十进制的每一位,都是一样的规则,只是代表的字母不同. 于是我们从最后一位往前考虑,当前位由字 ...

  5. CODE[VS] 1346 HelloWorld编译器

    1346 HelloWorld编译器  时间限制: 1 s  空间限制: 1000 KB  题目等级 : 黄金 Gold     题目描述 Description 请编程判断一个负责打印HelloWo ...

  6. 【BZOJ-4653】区间 线段树 + 排序 + 离散化

    4653: [Noi2016]区间 Time Limit: 60 Sec  Memory Limit: 256 MBSubmit: 107  Solved: 70[Submit][Status][Di ...

  7. VMware“该虚拟机似乎正在使用中”问题

    在用VMware虚拟机的时候,有时会发现打开虚拟机时提示“该虚拟机似乎正在使用中.如果该虚拟机未在使用,请按“获取所有权(T)”按钮获取它的所有权.否则,请按“取消(C)”按钮以防损坏.配置文件: D ...

  8. Restful api介绍

    网络应用程序,分为前端和后端两个部分.当前的发展趋势,就是前端设备层出不穷(手机.平板.桌面电脑.其他专用设备......). 因此,必须有一种统一的机制,方便不同的前端设备与后端进行通信.这导致AP ...

  9. NAnt0.92版本首次在windows 8.1的机子上运行报错的问题解决

    在官网上下载的0.92版本,各方面都配置好之后,用命令行运行,却提示报错,如下: 具体的错误提示文字是这样的: 获取ConfigurationFileLocation异常. System.Securi ...

  10. 开发新产品的三个验证阶段(EVT/DVT/PVT)

    1.EVT, Engineering Validation Test 是针对工程原型机的验证,对象很可能是一大块开发板,或是很多块开发板:关键是要有足够时间和样品. 通常,如果是新平台,需要花的时间和 ...