使用jQuery捕获Shift和Click事件

我似乎无法同时捕捉两个事件。 我正在尝试捕获Shift和Click(鼠标单击)事件。

我没有问题分别捕获每个行动,但不是两个在一起。

有没有人对这个问题做过一些研究?

是:

$(document).click(function(e) { if (e.shiftKey) { alert("shift+click") } }); 

你可以检查event.shiftKey布尔属性。

 $(selector).click(function(event) { if (event.shiftKey) { //.... } }); 

值得一提的是:

检测Ctrl或“Meta”(OS X上的Cmd键)

 $(document).click(function(e) { if (e.ctrlKey) { alert("ctrl+click"); } }); $(document).click(function(e) { if (e.metaKey) { alert("CMD+click"); } }); 

如果我正确理解你的问题,你可以使用在你的click处理程序中接收到的event对象的shiftKey属性来检查当用户单击时shift键是否closures。

编辑shiftKey ,而不是shift

一个很好的图书馆来处理按键事件是shortcut.js,可在这里 。 这很棒。

你甚至可以同时捕获Crtl + Shift ,这是我正在寻找的东西。