很多时候,我们需要获取用户的键盘事件,下面就一起来看看jquery是如何操作键盘事件的。

一、首先需要知道的是:

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 something;
}else if (event.keyCode == 39){
//do something;
}
});

实例研究:

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

① 实现ctrl+Enter就是ctrl+回车提交表单:

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

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

     $("form:first").trigger("submit");

 })

② 监测ctrl按键:

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

       //(ctrlKey和metaKey等效:都是监测)按下ctrl返回turn,按下非ctrl键返回false;

       console.log(event.ctrlKey);

       //console.log(event.metaKey);         

})

③ 键盘系列操作

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

    var e = event || window.event;     //作用???

    var k = e.keyCode || e.which;  //获取按键的acdII 码

    switch(k) {

       case 37:

           //…

           break;

       case 39:

           //…

           break;

    }

    return false;

})
 
//另外发现一个应用的方法:当页面转载完成的时候,第一个表单元素获得焦点,以便输入

$("input[type=text]:first").trigger("focus");    

//当表单没获得焦点,但用户却按下键盘的时候,自动为用户定位焦点到输入框上

$(document).keydown(function(){

       $("input[type=text]:first").trigger("focus");

})

以上是列出了jquery键盘事件的常用方法,很多时候应该也够用了。

深入了解jquery中的键盘事件的更多相关文章

  1. JQuery中如何处理键盘事件

    背景:比如在页面中,敲击回车键以后,实现登录功能,在之前的Winform开发时,也遇到过处理键盘事件的功能,比如游戏软件中,上下左右的移动等. 代码如下: $(document).keydown(fu ...

  2. IOS中input键盘事件支持的解决方法

    欢迎大家去我的网站详细查看http://genghongshuo.com.cn/ IOS中input键盘事件keyup.keydown.等支持不是很好, 用input监听键盘keyup事件,在安卓手机 ...

  3. js便签笔记(6)——jQuery中的ready()事件为何需要那么多代码?

    前言: ready()事件的应用,是大家再熟悉不过的了,学jQuery的第一步,最最常见的代码: jQuery(document).ready(function () { }); jQuery(fun ...

  4. jquery-10 jquery中的绑定事件和解绑事件的方法是什么

    jquery-10 jquery中的绑定事件和解绑事件的方法是什么 一.总结 一句话总结:bind(); unbind(); one(); 1. jquery中的绑定事件和解绑事件的方法是什么? bi ...

  5. jquery 组合键键盘事件

    jQuery处理键盘事件,比如小说网站中常见的按左右键来实现上一篇文章和下一篇文章,按ctrl+回车实现表单提交,google reader和有道阅读中的全快捷键操作... 本文讲述jQuery处理按 ...

  6. jquery中的DOM事件绑定与解绑

    在jquery事件中有时候有的事件只需要在绑定后有效触发一次,当通过e.target判断触发条件有效触发后解除绑定事件,来避免多次无效触发和与未知情况造成冲突. 这时候就要用到了jquery中的事件绑 ...

  7. Qt中的键盘事件,以及焦点的设置(比较详细)

    Qt键盘事件属于Qt事件系统,所以事件系统中所有规则对按键事件都有效.下面关注点在按键特有的部分: focus 一个拥有焦点(focus)的QWidget才可以接受键盘事件.有输入焦点的窗口是活动窗口 ...

  8. jquery中绑定click事件重复执行问题

    jquery中单击事件重复多次执行的问题使用如下方式: $('#sub').unbind('click').click(function () { ... });

  9. jQuery中四种事件监听的区别

    原文链接:点我 我们知道jquery提供了四种事件监听方式,分别是bind.live.delegate.on,下面就分别对这四种事件监听方式分析. 已知有4个列表元素: 列表元素1 列表元素2 列表元 ...

随机推荐

  1. [LeetCode] 3. Longest Substring Without Repeating Characters 解题思路

    Given a string, find the length of the longest substring without repeating characters. For example, ...

  2. Twitter 工程师谈 JVM 调优

    一. 调优需要关注的几个方面 内存调优 CPU 使用调优 锁竞争调优 I/O 调优 二. Twitter 最大的敌人:延迟 导致延迟的几个原因? 最大影响因素是 GC 其他的有:锁和线程调度.I/O. ...

  3. yii快速入门与参考

    Yii 权威指南 http://www.yiichina.com/guide/ http://www.yiiframework.com/doc/guide/1.1/zh_cn/ Ⅰ.基本概念一.入口文 ...

  4. Javascript之<script>标签

    把javascript代码插入到HTML页面中需要使用<script>标签,使用这个元素可以使javascript和html标记混合在一个页面中,也可以引入外部的javascript文件. ...

  5. SourceTree的基本使用

    1. SourceTree是什么 拥有可视化界面的项目版本控制软件,适用于git项目管理 window.mac可用 2. 获取项目代码 1. 点击克隆/新建 2. 在弹出框中输入项目地址,http或者 ...

  6. git 命令归纳

    git 新手一枚,随用随更新 git clone git@example.com:project-name.git 克隆 git branch [-a -r] 查看分支[所有 远端] git pull ...

  7. uva-10487 - Closest Sums

    暴力枚举后去重最后二分加推断找答案 #include<iostream> #include<map> #include<string> #include<cs ...

  8. android invalidate 执行流程详解

    invalidate()函数的主要作用是请求View树进行重绘,该函数可以由应用程序调用,或者由系统函数间接 调用,例如setEnable(), setSelected(), setVisiblity ...

  9. 【HDU】5247-找连续数(直接暴力)

    ORZ,这道题想复杂了,原来直接暴力就能够了复杂度为 n * n * logn #include<cstdio> #include<set> #include<algor ...

  10. Show Global Status 整理

    原文来源:MySQL 5.5 Reference Manual 部分翻译取自:<MySQL_5.1中文参考手册> 转载请注明原文链接http://www.cnblogs.com/lenag ...