我有一个管理面板,我想设置一个键盘快捷方式,当用户同时按下{A + D + M + N}时,会将用户重定向到该面板。
我有此代码:
document.onkeypress = function (e) {
e = e || window.event;
// use e.keyCode
};
但是它仅适用于一键操作,不适用于多键检测。
此外,我不会只检测(A + D + M + N),并且如果用户按下了键盘上的所有按钮,或者仅检测到(A + D + M + N + X + Z), ,它应该不会响应。
有什么想法或框架可以实现吗?
答案 0 :(得分:0)
keyPressListener,是我为此开发的一个库。
首先,由于您只想匹配首选键而不匹配其他任何键,因此请确保将ignoreOtherInput
设置为false
:
keyPressListener.config({ignoreOtherInput: false});
第二,现在您可以调用侦听器功能:
keyPressListener.when('A+D+M+N', function(){
window.location.href = '/admin-panel'; //User pressed (A+D+M+N), go to admin panel
});
因此,如果用户按下(A + D + M + N),它将把他重定向到管理面板 并且如果他按下了键盘上的所有按钮,或者按下了(Ctrl + A + D + M + N),它将不会响应。