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 相关文章推荐
实例:尽可能写友好的Javascript代码
Oct 09 Javascript
JavaScript 面向对象的之私有成员和公开成员
May 04 Javascript
JavaScript将相对地址转换为绝对地址示例代码
Jul 19 Javascript
Javascript 构造函数详解
Oct 22 Javascript
touch.js 拖动、缩放、旋转 (鼠标手势)功能代码
Feb 04 Javascript
node.js实现回调的方法示例
Mar 01 Javascript
vue实现前进刷新后退不刷新效果
Jan 26 Javascript
Django+Vue跨域环境配置详解
Jul 06 Javascript
Vue 实现登录界面验证码功能
Jan 03 Javascript
js找出5个数中最大的一个数和倒数第二大的数实现方法示例小结
Mar 04 Javascript
vue+element实现图片上传及裁剪功能
Jun 29 Javascript
JavaScript Array.flat()函数用法解析
Sep 02 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
php下foreach提示Warning:Invalid argument supplied for foreach()的解决方法
2014/11/11 PHP
php中数字、字符与对象判断函数用法实例
2014/11/26 PHP
PHP获取当前所在目录位置的方法
2014/11/26 PHP
浅谈PHP array_search 和 in_array 函数效率问题
2019/10/15 PHP
php使用pthreads v3多线程实现抓取新浪新闻信息操作示例
2020/02/21 PHP
DHTML 中的绝对定位
2006/11/26 Javascript
jquery实现每个数字上都带进度条的幻灯片
2013/02/20 Javascript
jquery中交替点击事件toggle方法的使用示例
2013/12/08 Javascript
JavaScript函数模式详解
2014/11/07 Javascript
JavaScript设计模式之工厂方法模式介绍
2014/12/28 Javascript
AngularJS折叠菜单实现方法示例
2017/05/18 Javascript
如何实现小程序tab栏下划线动画效果
2019/05/18 Javascript
通过实例解析js简易模块加载器
2019/06/17 Javascript
vuejs+element UI table表格中实现禁用部分复选框的方法
2019/09/20 Javascript
vue 使用微信jssdk,调用微信相册上传图片功能
2020/11/13 Javascript
python中使用enumerate函数遍历元素实例
2014/06/16 Python
Python编程中装饰器的使用示例解析
2016/06/20 Python
详解python3百度指数抓取实例
2016/12/12 Python
Python学生成绩管理系统简洁版
2020/04/05 Python
Python使用matplotlib绘制随机漫步图
2018/08/27 Python
django中ORM模型常用的字段的使用方法
2019/03/05 Python
详解Python Matplot中文显示完美解决方案
2019/03/07 Python
Python 获取windows桌面路径的5种方法小结
2019/07/15 Python
python数据处理之如何选取csv文件中某几行的数据
2019/09/02 Python
pytorch 批次遍历数据集打印数据的例子
2019/12/30 Python
Python如何安装第三方模块
2020/05/28 Python
opencv python 对指针仪表读数识别的两种方式
2021/01/14 Python
使用jTopo给Html5 Canva中绘制的元素添加鼠标事件
2014/05/15 HTML / CSS
英国珠宝钟表和家居礼品精品店:David Shuttle
2018/02/24 全球购物
德国拖鞋网站:German Slippers
2019/11/08 全球购物
作为网站管理者应当如何防范XSS
2014/08/16 面试题
与UNIX有关的几个名词
2015/09/17 面试题
鲜花方阵解说词
2014/02/13 职场文书
党的群众路线教育实践活动个人批评与自我批评
2014/10/16 职场文书
道歉信怎么写
2015/05/12 职场文书
python基础详解之if循环语句
2021/04/24 Python