How could I identify which Ctrl / Shift / Alt keys are pressed in the following code ?

$("#my_id").click(function() {
    if (<left control key is pressed>) { alert("Left Ctrl"); }
    if (<right shift and left alt keys are pressed>) { alert("Right Shift + Left Alt"); }
});

推荐答案

好吧,你知道这在所有浏览器中都不起作用,只是IE 8.微软实现了确定按下哪个(右/左)键的功能.这里是链接http://msdn.microsoft.com/en-us/library/ms534630(VS.85).aspx

I also found this wonder article about keypress, keyup, keydown event in browsers. http://unixpapa.com/js/key.html

$('#someelement').bind('click', function(event){ 

    if(event.ctrlKey) {
      if (event.ctrlLeft) {
        console.log('ctrl-left'); 
      }
      else {
        console.log('ctrl-right');
      }
    }
    if(event.altKey) {
      if (event.altLeft) {
        console.log('alt-left'); 
      }
      else {
        console.log('alt-right');
      }
    }
    if(event.shiftKey) {
      if (event.shiftLeft) {
        console.log('shift-left'); 
      }
      else
      {
        console.log('shift-right');
      }
    }
  }); 

Jquery相关问答推荐

如何用 jQuery / AJAX 替换表格的行

使用 jQuery 时何时/为什么要在变量前加上$?

如何使用 JQuery Select 没有特定子元素的元素

jQuery $(document).ready () 触发两次

jQuery中的正则表达式字段验证

Facebook 风格的 JQuery 自动完成插件

如何使用给定的 url 判断图像是否存在?

页面滚动后,jQuery可拖动在错误的位置显示助手

Twitter Bootstrap alert 可以淡入淡出吗?

为什么 Chrome 会忽略本地 jQuery cookie?

jQuery Force 为 iframe 设置 src 属性

Jquery - 如何获取样式显示属性无/块

JavaScript:让代码每分钟运行一次

jQuery Uncaught TypeError: 对象 [object Window] 的属性$不是函数

检测 jQuery UI 对话框是否打开

jQuery或javascript查找页面的内存使用情况

删除所有以某个字符串开头的类

在jQuery中,当它们都具有相同的名称时,如何获取单选按钮的值?

jQuery:通过 .attr() 添加两个属性;方法

使用 jQuery/Javascript 防止任何形式的页面刷新