jquery快捷动态绑定键盘事件的操作函数代码


Posted in Javascript onOctober 17, 2013
(function($) 
{ 
$.extend({ key_fn:[], //存放绑定的字符对应的函数 
key_code:[], //存放字符 
key_bind:function(ch,callback){ 
var KeyCode = {a:65,b:66,c:67,d:68,e:69,f:70,g:71,h:72,i:73,j:74,k:75,l:76,m:77,n:78,o:79,p:80,q:81,r:82,s:83,t:84,u:85,v:86,w:87,x:88,y:89,z:90}; 
if(KeyCode.hasOwnProperty(ch)){ 
$.key_fn.push(callback); 
$.key_code.push(ch); 
//第一次才需要添加事件 
if($.key_fn.length == 1){ 
$(document).keypress(function(e){ 
var e = event || window.event; 
var k = e.keyCode || e.which; 
for(var i =0 ; i < $.key_fn.length ;i++){ 
// - 32 兼容小写 
if(k-32 == KeyCode[$.key_code[i]] || k == KeyCode[$.key_code[i]] ){ 
log('pressed binded key '+k); 
$.key_fn[i](); 
break; 
} 
} 
}); 
} 
}else 
{ 
alert('绑定事件只能是字母'); 
} 
} 
}); 
})(jQuery);

使用的时候可以如下
$.key_bind('f',set_table_full_screen); 
$.key_bind('r',reloadthis);

有时候我们需要为应用添加一些快捷方式,每次都去写一个下面的代码,通过key_bin就是方便的绑定某个键盘和和对应的操作函数了。
$(document).keypress(function(){})
Javascript 相关文章推荐
Json对象与Json字符串互转(4种转换方式)
Mar 27 Javascript
JavaScript两种跨域技术全面介绍
Apr 16 Javascript
HTML页面登录时的JS验证方法
May 28 Javascript
JavaScript中的setUTCDate()方法使用详解
Jun 11 Javascript
JS文件/图片从电脑里面拖拽到浏览器上传文件/图片
Mar 08 Javascript
JS检测window.open打开的窗口是否关闭
Jun 25 Javascript
简单实现js轮播图效果
Jul 14 Javascript
基于jQuery解决ios10以上版本缩放问题
Nov 03 jQuery
Vue脚手架的简单使用实例
Jul 10 Javascript
JavaScript JMap类定义与使用方法示例
Jan 22 Javascript
JS动态显示倒计时效果
Dec 12 Javascript
微信小程序实现一个简单swiper代码实例
Dec 30 Javascript
js实现的常用的左侧导航效果
Oct 17 #Javascript
给超链接添加特效鼠标移动展示提示信息且随鼠标移动
Oct 17 #Javascript
JS对HTML标签select的获取、添加、删除操作
Oct 17 #Javascript
JS操作数据库的实例代码
Oct 17 #Javascript
JavaScript调用后台的三种方法实例
Oct 17 #Javascript
9行javascript代码获取QQ群成员具体实现
Oct 16 #Javascript
JS实现时间格式化的方式汇总
Oct 16 #Javascript
You might like
怎么样可以把 phpinfo()屏蔽掉?
2006/11/24 PHP
thinkPHP框架对接支付宝即时到账接口回调操作示例
2016/11/14 PHP
PHP+Ajax无刷新带进度条图片上传示例
2017/02/08 PHP
PHP培训要多少钱
2017/06/06 PHP
浅谈PHP实现大流量下抢购方案
2017/12/15 PHP
关于javascript中的parseInt使用技巧
2009/09/03 Javascript
Javascript学习笔记2 函数
2010/01/11 Javascript
jQuery实现点击文本框弹出热门标签的提示效果
2013/11/17 Javascript
[将免费进行到底]在Amazon的一年免费服务器上安装Node.JS, NPM和OurJS博客
2014/08/18 Javascript
在jQuery中处理XML数据的大致方法
2015/08/14 Javascript
jquery实现右侧栏菜单选择操作
2016/03/04 Javascript
require.js与bootstrap结合实现简单的页面登录和页面跳转功能
2017/05/12 Javascript
详解React中传入组件的props改变时更新组件的几种实现方法
2018/09/13 Javascript
angular6根据environments配置文件更改开发所需要的环境的方法
2019/03/06 Javascript
微信小程序 flexbox layout快速实现基本布局的解决方案
2020/03/24 Javascript
快速解决element的autofocus失效问题
2020/09/08 Javascript
vue 递归组件的简单使用示例
2021/01/14 Vue.js
python 字典(dict)遍历的四种方法性能测试报告
2014/06/25 Python
在Python中操作字典之clear()方法的使用
2015/05/21 Python
Selenium chrome配置代理Python版的方法
2018/11/29 Python
python 在某.py文件中调用其他.py内的函数的方法
2019/06/25 Python
Python extract及contains方法代码实例
2020/09/11 Python
python将YUV420P文件转PNG图片格式的两种方法
2021/01/22 Python
英国电动工具购买网站:Anglia Tool Centre
2017/04/25 全球购物
ZWILLING双立人英国网上商店:德国刀具锅具厨具品牌
2018/05/15 全球购物
编程实现当输入某产品代码则打印出该产品记录的功能
2014/05/03 面试题
汽车技术服务与营销专业在籍生自荐信
2013/09/28 职场文书
家电业务员岗位职责
2014/03/10 职场文书
环保建议书作文
2014/03/12 职场文书
《红军不怕远征难》教学反思
2014/04/14 职场文书
奥林匹克的口号
2014/06/13 职场文书
教师节标语大全
2014/10/07 职场文书
秋季运动会开幕词
2015/01/28 职场文书
2015年度内部审计工作总结
2015/05/20 职场文书
《全神贯注》教学反思
2016/02/22 职场文书
2016道德模范先进事迹材料
2016/02/26 职场文书