我似乎无法同时捕获两个事件。我正在尝试捕获Shift和Click(鼠标单击)事件。
我可以单独捕捉每个动作,但不能同时捕捉两个动作。
是否有人对该特定问题进行了一些研究?
答案 0 :(得分:93)
是:
$(document).click(function(e) {
if (e.shiftKey) {
alert("shift+click")
}
});
答案 1 :(得分:20)
您可以查看event.shiftKey布尔属性。
$(selector).click(function(event) {
if (event.shiftKey) {
//....
}
});
答案 2 :(得分:8)
值得注意的是:
检测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");
}
});
答案 3 :(得分:4)
如果我正确理解了您的问题,您可以使用shiftKey
处理程序中收到的event
对象的click
属性来检查用户是否关闭了shift键点击。
编辑:shiftKey
,而不是shift
答案 4 :(得分:3)
一个处理按键事件的好库是shortcut.js,可用here。非常好。
您甚至可以在我正在寻找的同时捕获 Crtl + Shift 。