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 相关文章推荐
contains和compareDocumentPosition 方法来确定是否HTML节点间的关系
Sep 13 Javascript
网页实时显示服务器时间和javscript自运行时钟
Jun 09 Javascript
JS小游戏之象棋暗棋源码详解
Sep 25 Javascript
Javascript中Array用法实例分析
Jun 13 Javascript
JavaScript构造函数详解
Dec 27 Javascript
webix+springmvc session超时跳转登录页面
Oct 30 Javascript
Angular.js中处理页面闪烁的方法详解
Mar 09 Javascript
es7学习教程之fetch解决异步嵌套问题的方法示例
Jul 21 Javascript
VUE 使用中踩过的坑
Feb 08 Javascript
element-ui 的el-button组件中添加自定义颜色和图标的实现方法
Oct 26 Javascript
解决微信小程序云开发中获取数据库的内容为空的方法
May 15 Javascript
element-ui如何防止重复提交的方法步骤
Dec 09 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
优化使用mysql存储session的php代码
2008/01/10 PHP
PHP中MD5函数使用实例代码
2008/06/07 PHP
PHP 字符截取 解决中文的截取问题,不用mb系列
2009/09/29 PHP
通过PHP current函数获取未知字符键名数组第一个元素的值
2013/06/24 PHP
PHP模拟post提交数据方法汇总
2016/02/16 PHP
JavaScript delete操作符应用实例
2009/01/13 Javascript
Javascript结合css实现网页换肤功能
2009/11/02 Javascript
javascript语言结构小记(一)
2011/09/10 Javascript
fmt:formatDate的输出格式详解
2014/01/09 Javascript
JS实现选中当前菜单后高亮显示的导航条效果
2015/10/15 Javascript
js window对象属性和方法相关资料整理
2015/11/11 Javascript
详解javascript的变量与标识符
2016/01/04 Javascript
JS简单生成两个数字之间随机数的方法
2016/08/03 Javascript
探究JavaScript中的五种事件处理程序方式
2016/12/07 Javascript
Bootstrap CSS组件之下拉菜单(dropdown)
2016/12/17 Javascript
vuejs2.0运用原生js实现简单的拖拽元素功能示例
2017/02/24 Javascript
jQuery插件实现非常实用的tab栏切换功能【案例】
2019/02/18 jQuery
微信小程序实现页面浮动导航
2020/01/08 Javascript
小程序实现录音功能
2020/09/22 Javascript
angular *Ngif else用法详解
2020/12/15 Javascript
Python实现抓取网页并且解析的实例
2014/09/20 Python
scrapy自定义pipeline类实现将采集数据保存到mongodb的方法
2015/04/16 Python
对numpy中的where方法嵌套使用详解
2018/10/31 Python
Python日志无延迟实时写入的示例
2019/07/11 Python
基于python全局设置id 自动化测试元素定位过程解析
2019/09/04 Python
pytorch 实现cross entropy损失函数计算方式
2020/01/02 Python
python网络编程:socketserver的基本使用方法实例分析
2020/04/09 Python
Keras 使用 Lambda层详解
2020/06/10 Python
matplotlib交互式数据光标实现(mplcursors)
2021/01/13 Python
实例讲解使用CSS实现多边框和透明边框的方法
2015/09/08 HTML / CSS
澳大利高级泳装品牌:Bondi Born
2018/05/23 全球购物
遗体告别仪式主持词
2014/03/20 职场文书
2014年妇委会工作总结
2014/12/10 职场文书
《中华上下五千年》读后感3篇
2019/11/29 职场文书
python ConfigParser库的使用及遇到的坑
2022/02/12 Python
Oracle使用别名的好处
2022/04/19 Oracle