网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的考试资料:

 

标题 自制简易jquery键盘监听插件
内容
    <script type="text/javascript" src=">
    <script>
    /**
    * 简易键盘监听事件
    * @author shine.s
    */
    var KeyListener = (function(){
    var _debug = false;
    var _ups = {};
    var _mods = {
    'shift': 'shiftKey',
    'ctrl': 'ctrlKey',
    'alt': 'altKey',
    }
    var KEYS = {
    'backspace': 8,
    'tab': 9,
    'enter': 13, 'return': 13,
    'pause': 19,
    'caps': 20, 'capslock': 20,
    'escape': 27, 'esc': 27,
    'space': 32,
    'pgup': 33, 'pageup': 33,
    'pgdown': 34, 'pagedown': 34,
    'end': 35,
    'home': 36,
    'ins': 45, 'insert': 45,
    'del': 46, 'delete': 46,
    'left': 37,
    'up': 38,
    'right': 39,
    'down': 40,
    '*': 106,
    '+': 107, 'plus': 107,
    '-': 109, 'minus': 109,
    ';': 186,
    '=': 187,
    ',': 188,
    '.': 190,
    '/': 191,
    '`': 192,
    '[': 219,
    '\': 220,
    ']': 221,
    "'": 222
    }
    var i;
    //小键盘
    for (i = 0; i < 10; i++) {
    KEYS['num-' + i] = i + 96;
    }
    //数字
    for (i = 0; i < 10; i++) {
    KEYS[i.toString()] = i + 48;
    }
    // f1-f24
    for (i = 1; i < 25; i++) {
    KEYS['f' + i] = i + 111;
    }
    //字母
    for (i = 65; i < 91; i++) {
    KEYS[String.fromCharCode(i).toLowerCase()] = i;
    }
    function addListener(keycode, callBack) {
    if(typeof(keycode) == 'object') {
    $.each(keycode, function(k,v){
    _ups[k] = v;
    })
    } else {
    _ups[keycode] = callBack;
    }
    }
    function proccess(e) {
    keycode = e.which ? e.which : e.keyCode;
    if(_debug) {
    console.log("Now: "+keycode);
    }
    $.each(_ups, function(k,v) {
    var kArr = k.split('+');
    flag = true;
    if(kArr.length>1) {
    for(var i=0; i<kArr.length-1; i++) {
    var spec = kArr[i];
    if(_mods[spec]) {
    var flag = flag && e[_mods[spec]];
    }
    }
    var k = kArr[kArr.length-1];
    }
    if(KEYS[k] == 'undefined') {
    return true;
    }
    if(flag && keycode == KEYS[k]) {
    return v();
    }
    })
    }
    if(_ups) {
    $(document).keyup(proccess);
    }
    function debug() {
    _debug = true;
    }
    return {
    debug: debug,
    addListener: addListener,
    };
    })();
    //test-demo
    $(function(){
    KeyListener.addListener('c', c);
    KeyListener.addListener({
    'left': left,
    'right': function(){
    right(1, 6);
    },
    'shift+alt+f': d,
    'shift+e': e,
    });
    function left() {
    console.log('test');
    }
    function right(a, b) {
    console.log(a+b);
    }
    function c() {
    console.log('c');
    }
    function d() {
    console.log('D');
    }
    function e() {
    console.log('e');
    }
    })
    </script>
随便看

 

在线学习网考试资料包含高考、自考、专升本考试、人事考试、公务员考试、大学生村官考试、特岗教师招聘考试、事业单位招聘考试、企业人才招聘、银行招聘、教师招聘、农村信用社招聘、各类资格证书考试等各类考试资料。

 

Copyright © 2002-2024 cuapp.net All Rights Reserved
更新时间:2025/5/17 19:14:05