function isNumPadMultiKey(evt) { var numPadCodes = ["Numpad0", "Numpad1", "Numpad2", "Numpad3", "Numpad4", "Numpad5", "Numpad6", "Numpad7", "Numpad8", "Numpad9", "NumpadDecimal"]; return (numPadCodes.indexOf(evt.code) !== -1); } |
function getNumPadKeySym(evt) { var numLockOnKeySyms = { "Numpad0": 0xffb0, "Numpad1": 0xffb1, "Numpad2": 0xffb2, "Numpad3": 0xffb3, "Numpad4": 0xffb4, "Numpad5": 0xffb5, "Numpad6": 0xffb6, "Numpad7": 0xffb7, "Numpad8": 0xffb8, "Numpad9": 0xffb9, "NumpadDecimal": 0xffac }; var numLockOnKeyCodes = [96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 108, 110]; if (numLockOnKeyCodes.indexOf(evt.keyCode) !== -1) { return numLockOnKeySyms[evt.code]; } return 0; |
result.code = evt.code; result.keysym = 0; if (isNumPadMultiKey(evt)) { result.keysym = getNumPadKeySym(evt); } |
if (state.length > 0 && state[state.length-1].code == 'ControlLeft') { if (evt.code !== 'AltRight') { next({code: 'ControlLeft', type: 'keydown', keysym: 0}); } else { state.pop(); } } (...) if (evt.code !== 'ControlLeft') { next(evt); } |
if (numLockOnKeyCodes.indexOf(evt.keyCode) !== -1) { |
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |