jquery利用event.which方法获取键盘输入值的代码


Posted in Javascript onOctober 09, 2011

实例
显示按了哪个键:
$("input").keydown(function(event){
$("div").html("Key: " + event.which);
});
亲自试一试
定义和用法
which 属性指示按了哪个键或按钮。
语法
event.which参数 描述
event 必需。规定要检查的事件。这个 event 参数来自事件绑定函数。
jQuery丢弃了标准的 button 属性采用 which,这有点让人费解。
which 是Firefox引入的,IE不支持。which的本意是获取键盘的键值(keyCode)。
jQuery中的which即可以是键盘的键值,也可以是鼠标的键值。
即当判断用户按下键盘的哪个键时可以使用which,当判断用户按下鼠标的哪个键时也可以用which。它一举两用了。
源码:

// Add which for key events 
if ( event.which == null && (event.charCode != null || event.keyCode != null) ) { 
event.which = event.charCode != null ? event.charCode : event.keyCode; 
} 
// Add which for click: 1 === left; 2 === middle; 3 === right 
// Note: button is not normalized, so don't use it 
if ( !event.which && event.button !== undefined ) { 
event.which = (event.button & 1 ? 1 : ( event.button & 2 ? 3 : ( event.button & 4 ? 2 : 0 ) )); 
}

标准的button采用0,1,2表示鼠标的左,中,右键。jQuery的which则使用用1,2,3。
还有一点让人不爽的是jQuery文档 event.which 中并没有提到which可以表示鼠标按键值,只提到了表示键盘按键值。
源码中的注释也让人误解。
// Add which for click: 1 === left; 2 === middle; 3 === right
注意这里说的是click ,很容易让人使用click 事件,但实际上click事件中获取是错误的。
下面就用 click 事件试试:
<!DOCTYPE html> 
<html> 
<head> 
<meta charset="utf-8"/> 
<title></title> 
<script src="http://demo.3water.com/jslib/jquery/jquery-1.6.1.js"></script> 
<script type="text/css"> 
$(document).click(function(e){ 
alert(e.which); 
}) 
</script> 
</head> 
<body> 
</body> 
</html>
Javascript 相关文章推荐
javascript:void(0)的真正含义实例分析
Aug 20 Javascript
jQuery 白痴级入门教程
Nov 11 Javascript
js 遍历json返回的map内容示例代码
Oct 29 Javascript
微信小程序 地图map详解及简单实例
Jan 10 Javascript
JavaScript获取select中text值的方法
Feb 13 Javascript
Bootstrap fileinput组件封装及使用详解
Mar 10 Javascript
vue实现图书管理demo详解
Oct 17 Javascript
Vue项目全局配置页面缓存之按需读取缓存的实现详解
Aug 01 Javascript
js实现每日签到功能
Nov 29 Javascript
javascript实现打砖块小游戏(附完整源码)
Sep 18 Javascript
js之ajax文件上传
May 13 Javascript
详细聊聊vue中组件的props属性
Nov 02 Vue.js
javascript之bind使用介绍
Oct 09 #Javascript
javascript之querySelector和querySelectorAll使用说明
Oct 09 #Javascript
使用jQuery操作Cookies的实现代码
Oct 09 #Javascript
jQuery实现切换页面布局使用介绍
Oct 09 #Javascript
passwordStrength 基于jquery的密码强度检测代码使用介绍
Oct 08 #Javascript
关于jQuery的inArray 方法介绍
Oct 08 #Javascript
imgAreaSelect 中文文档帮助说明
Oct 08 #Javascript
You might like
php基础教程 php内置函数实例教程
2012/08/21 PHP
php-cli简介(不会Shell语言一样用Shell)
2013/06/03 PHP
ThinkPHP中I(),U(),$this-&gt;post()等函数用法
2014/11/22 PHP
PHP使用CURL实现下载文件功能示例
2019/06/03 PHP
laravel框架模型中非静态方法也能静态调用的原理分析
2019/11/23 PHP
laravel excel 上传文件保存到本地服务器功能
2019/11/14 PHP
PHP实现简单注册登录系统
2020/12/28 PHP
jquery 新手学习常见问题解决方法
2010/04/18 Javascript
js操作checkbox遇到的问题解决
2013/06/29 Javascript
input链接页面、打开新网页等等的具体实现
2013/12/30 Javascript
在浏览器中实现图片粘贴的jQuery插件-- pasteimg使用指南
2014/12/29 Javascript
JavaScript数据类型之基本类型和引用类型的值
2015/04/01 Javascript
JQuery.dataTables表格插件添加跳转到指定页
2017/06/09 jQuery
JavaScript实现无刷新上传预览图片功能
2017/08/02 Javascript
Angular2仿照微信UI实现9张图片上传和预览的示例代码
2017/10/19 Javascript
vue自动化表单实例分析
2018/05/06 Javascript
Vue中Table组件行内右键菜单实现方法(基于 vue + AntDesign)
2019/11/21 Javascript
[05:28]刀塔密之一:团结则存
2014/07/03 DOTA
[01:04]DOTA2上海特锦赛现场采访 FreeAgain遭众解说围攻
2016/03/25 DOTA
Windows中使用wxPython和py2exe开发Python的GUI程序的实例教程
2016/07/11 Python
Python数据结构与算法之完全树与最小堆实例
2017/12/13 Python
Flask之flask-session的具体使用
2018/07/26 Python
使用Python操作FTP实现上传和下载的方法
2019/04/01 Python
详解Python用户登录接口的方法
2019/04/17 Python
Python shelve模块实现解析
2019/08/28 Python
深入了解python中元类的相关知识
2019/08/29 Python
python使用列表的最佳方案
2020/08/12 Python
python里glob模块知识点总结
2021/01/05 Python
Dogeared官网:在美国手工制作的珠宝
2019/08/24 全球购物
俄罗斯天然和有机产品、健康生活网上商店:Fitomarket.ru
2020/10/09 全球购物
不拖欠农民工工资承诺书
2014/03/31 职场文书
中班幼儿评语大全
2014/04/30 职场文书
简单的辞职信范文(2016最新版)
2015/05/12 职场文书
2016年妇联“6﹒26国际禁毒日”宣传活动总结
2016/04/05 职场文书
2016年学校党支部创先争优活动总结
2016/04/05 职场文书
如何使用python包中的sched事件调度器
2022/04/30 Python