Heim  >  Artikel  >  Web-Frontend  >  jquery快捷动态绑定键盘事件的操作函数代码_jquery

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

WBOY
WBOYOriginal
2016-05-16 17:19:47820Durchsuche
复制代码 代码如下:

(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
// - 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(){})
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn