如何区分使用鼠标右键单击和物理键盘上的上下文菜单按键?
使用此代码我尝试在控制台中打印事件
$('#'+inputId).bind('contextmenu', function(e) {
console.log(e);
});
我抓取了上面代码的一些输出 -
对于使用鼠标右键单击,它是-
- 按钮:2
- 原始事件:鼠标事件
- 类型:“上下文菜单”
- which: 3
对于键盘上的上下文菜单按键,它是 -
- 按钮:2
- 原始事件:鼠标事件
- 类型:“上下文菜单”
- which: 3
我只想在物理键盘上按下“上下文菜单键”时执行某些操作。我该如何实现这一目标?
你好这将帮助您捕捉差异:工作演示 http://jsfiddle.net/pPnME/1/ http://jsfiddle.net/pPnME/1/
我已经在 Alienware - Chrome 上对此进行了测试,当您右键单击时,您将看到右键单击警报,否则在键盘上您将看到键盘警报。
请注意:您可以根据以下内容来识别点击:which
财产:http://api.jquery.com/event.which/ http://api.jquery.com/event.which/
对于按键或鼠标事件,该属性指示特定的按键或
被按下的按钮。
希望这符合原因。:)
另请注意,很少有插件可用于获取快捷方式,但我建议坚持使用基本功能,并使用我给出的演示(如果它只是分别捕获两个事件,则其余演示都可以玩:)
code
/*
1 = Left Mousebutton
2 = Centre Mousebutton
3 = Right Mousebutton
*/
$('input').mousedown(function(e) {
if (e.which === 3) {
alert('rightclick'); /* Right Mousebutton was clicked! */
}
});
$('input').bind('contextmenu', function(e) {
alert('keyboard yeah');
//console.log(e);
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)