@orca-fe/tools
Version:
front-end tools
44 lines • 1.38 kB
JavaScript
/** * 是否为mac系统(包含iphone手机) * */
export function isMac() {
return /macintosh|mac os x/i.test(navigator.userAgent);
}
export function isSingleKey(event) {
var metaKey = event.metaKey,
ctrlKey = event.ctrlKey,
altKey = event.altKey,
shiftKey = event.shiftKey;
var singleKey = !ctrlKey && !shiftKey && !altKey && !metaKey;
return singleKey;
}
export function isShiftOnly(event) {
var metaKey = event.metaKey,
ctrlKey = event.ctrlKey,
altKey = event.altKey,
shiftKey = event.shiftKey;
var shiftOnly = shiftKey && !ctrlKey && !altKey && !metaKey;
return shiftOnly;
}
export function isCtrlOnly(event) {
var metaKey = event.metaKey,
ctrlKey = event.ctrlKey,
altKey = event.altKey,
shiftKey = event.shiftKey;
var ctrlOnly = !shiftKey && !altKey && (isMac() ? metaKey && !ctrlKey : ctrlKey && !metaKey);
return ctrlOnly;
}
export function isCut(event) {
var ctrlOnly = isCtrlOnly(event);
return ctrlOnly && event.key === 'x';
}
export function isCopy(event) {
var ctrlOnly = isCtrlOnly(event);
return ctrlOnly && event.key === 'c';
}
export function isPaste(event) {
var ctrlOnly = isCtrlOnly(event);
return ctrlOnly && event.key === 'v';
}
export function isDelete(event) {
var singleKey = isSingleKey(event);
return singleKey && event.key === 'Delete' || event.key === 'Backspace' && isMac();
}