vxe-table-select-area
Version:
一个基于 vxe-table 的可区域选中复制、粘贴的组件
60 lines (55 loc) • 1.44 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.isDirectionKeyCode = isDirectionKeyCode;
exports.isInputKeyCode = isInputKeyCode;
/* eslint-disable eqeqeq */
/* eslint-disable brace-style */
// is input key code
function isInputKeyCode(event) {
var result = false;
var keyCode = event.keyCode,
altKey = event.altKey,
ctrlKey = event.ctrlKey,
shiftKey = event.shiftKey,
metaKey = event.metaKey;
// exclude keys
if (altKey || ctrlKey || shiftKey || metaKey) {
return result;
}
// Digit0 to Digit9
if (keyCode >= 48 && keyCode <= 57 || keyCode >= 96 && keyCode <= 105) {
result = true;
}
// A to Z
else if (keyCode >= 65 && keyCode <= 90) {
result = true;
} else if ([186, 187, 188, 189, 190, 191, 192, 219, 220, 221, 222].indexOf(keyCode) > -1) {
/*
Semicolon:186
Equal("="):187
Comma (","):188
Minus("-"):189
Period("."):190
Slash("/"):191
Backquote("`"):192
Open square bracket ("["):219
Backslash("\"):220
Close square bracket ("]"):221
Quote("'"):222
*/
result = true;
}
// Support non-English languages. Chinese, Japanese, French, etc.
else if (keyCode == 229) {
result = true;
}
return result;
}
// is direction key code
function isDirectionKeyCode(keyCode) {
return [37, 38, 39, 40].indexOf(keyCode) > -1;
}
// is single key
// export function isSingleKey() {}