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 相关文章推荐
jquery实现简单的拖拽效果实例兼容所有主流浏览器
Jun 21 Javascript
深入分析escape()、encodeURI()、encodeURIComponent()的区别及示例
Aug 04 Javascript
jquery小火箭返回顶部代码分享
Aug 19 Javascript
AngularJS使用ngMessages进行表单验证
Dec 27 Javascript
Javascript的无new构建实例详解
May 15 Javascript
实例讲解JavaScript中call、apply、bind方法的异同
Sep 13 Javascript
AngularJS中指令的四种基本形式实例分析
Nov 22 Javascript
前端开发不得不知的10个最佳ES6特性
Aug 30 Javascript
微信小程序实现列表下拉刷新上拉加载
Jul 29 Javascript
JS获取月的第几周和年的第几周实例代码
Dec 05 Javascript
package.json各个属性说明详解
Mar 11 Javascript
Vue 中如何将函数作为 props 传递给组件的实现代码
May 12 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
反射调用private方法实践(php、java)
2015/12/21 PHP
Laravel框架实现抢红包功能示例
2019/10/31 PHP
php中加密解密DES类的简单使用方法示例
2020/03/26 PHP
JQuery Dialog的内存泄露问题解决方法
2010/06/18 Javascript
jQuery插件-jRating评分插件源码分析及使用方法
2012/12/28 Javascript
jquery重新播放css动画所遇问题解决
2013/08/21 Javascript
用js实现in_array的方法
2013/11/05 Javascript
js中对象的声明方式以及数组的一些用法示例
2013/12/11 Javascript
jquery单行文字向上滚动效果示例
2014/03/06 Javascript
js 日期比较相关天数代码
2014/04/02 Javascript
jquery网页回到顶部效果(图标渐隐,自写)
2014/06/16 Javascript
理解JavaScript的变量的入门教程
2015/07/07 Javascript
JavaScrip常见的一些算法总结
2015/12/28 Javascript
JavaScript快速切换繁体中文和简体中文的方法及网站支持简繁体切换的绝招
2016/03/07 Javascript
JavaScript使用forEach()与jQuery使用each遍历数组时return false 的区别
2016/08/26 Javascript
基于JavaScript实现鼠标向下滑动加载div的代码
2016/08/31 Javascript
微信小程序 删除项目工程实现步骤
2016/11/10 Javascript
vue跨域解决方法
2017/10/15 Javascript
详解vue+css3做交互特效的方法
2017/11/20 Javascript
JS+CSS实现动态时钟
2021/02/19 Javascript
[41:17]VG vs Optic 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
wxPython 入门教程
2008/10/07 Python
Python入门_浅谈数据结构的4种基本类型
2017/05/16 Python
Python实现的手机号归属地相关信息查询功能示例
2017/06/08 Python
Python实现的插入排序算法原理与用法实例分析
2017/11/22 Python
Tensorflow使用支持向量机拟合线性回归
2018/09/07 Python
Python中判断子串存在的性能比较及分析总结
2019/06/23 Python
python flask搭建web应用教程
2019/11/19 Python
python opencv实现信用卡的数字识别
2020/01/12 Python
python使用selenium爬虫知乎的方法示例
2020/10/28 Python
英国DIY汽车维修配件网站:DIY Car Service Parts
2019/08/30 全球购物
办公室年终个人自我评价
2013/10/28 职场文书
设计顾问服务计划书
2014/05/04 职场文书
《雪域豹影》读后感:父爱的伟大
2019/12/23 职场文书
python某漫画app逆向
2021/03/31 Python
SQL Server代理:理解SQL代理错误日志处理方法
2021/06/30 SQL Server