如何使用javascript/jquery跟踪修饰键?

Mik*_*ike 5 javascript jquery keyboard-shortcuts

我的要求很简单:用户按下Ctrl键会在我的页面上显示一些通知,当发布时通知就会消失,所以我需要跟踪修改键,例如Ctrl.不幸的是我谷歌并没有找到任何线索,一些着名的键盘库,如捕鼠器,keymaster似乎也没有涵盖这个主题.

有任何想法吗?

Dav*_*ave 8

修改键触发keydown(但不是keypress).然后,您只需检查事件对象上定义的标志即可.shiftKey,altKey,ctrlKey,metaKey,等.

完整列表如下:http://api.jquery.com/category/events/event-object/


jfr*_*d00 1

使用 jQuery,您只需使用 keydown 和 keyup 事件处理程序,您就会看到 Ctrl 键向下和向上移动。如果您想跟踪它是下降还是上升,那么只需在其下降时设置一个全局标志并在其上升时清除该标志即可。

示例代码:

$(document).keydown(function(e) {
    if (e.which == 17) {
        $("#result").append("ctrl key pressed<br>");
    }
});
Run Code Online (Sandbox Code Playgroud)

e.which 上的 JQuery 文档: http: //api.jquery.com/event.which/

工作演示:http://jsfiddle.net/jfriend00/mezwF/