任何方法来检测用于osx浏览器的javascript中的ctrl + click?没有jQuery

时间:2013-02-06 09:41:18

标签: javascript events click mouse

使用vanilla js。从OSX获取“右键单击”(选项单击)的任何方法?

function clickey(e)
{
  if(event.button==2 || /*how you'd do it in Java=)*/ e.getButton() == MouseButton.BUTTON3 )    
...    
}

但在js中,eeet怎么办?

2 个答案:

答案 0 :(得分:5)

您需要收听contextmenu事件。应在显示上下文菜单时触发此操作。因此,如果鼠标按钮或 ctrl + 鼠标

如果不受支持,那么您可以尝试检查mousedown button 2 ctrlKey true document.addEventListener("contextmenu",function(event){ }); document.addEventListener("mousedown",function(event){ if( event.ctrlKey || event.button == 2 ) { } }); 的事件是否由which触发使用 ctrl + 鼠标

{{1}}

OR (取决于浏览器支持的内容)

{{1}}

修改:删除了{{1}}信息

答案 1 :(得分:3)

我对OSX没有经验,但Mouse Events可以选择检查修改键。所以沿着这些方向应该有用:

DOMElement.addEventListener("click",function(event){
   // either check directly the button
   if (event.button == 2){}
   // or
   if (event.ctrlKey || event.altKey || event.metaKey){
       // do stuff
   }  
});