any way to detect ctrl + click in javascript for osx browsers? no jQuery

后端 未结 2 1260
猫巷女王i
猫巷女王i 2020-12-20 04:31

using vanilla js. Any way to grab the \"right-click\" (option-click) from OSX?

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


        
相关标签:
2条回答
  • 2020-12-20 05:15

    You need to listen to the contextmenu event. This is triggered when the context menu should be shown. So either if the right mouse butten or or ctrl + mouse.

    If it is not supported then you can try to check the mousedown event where button is 2 and ctrlKey is true if it is triggered by using ctrl + mouse

    document.addEventListener("contextmenu",function(event){
    
    });
    

    OR (depending on what the browser supports)

    document.addEventListener("mousedown",function(event){
        if( event.ctrlKey || event.button == 2 ) {
        }
    });
    

    edit: removed the which info

    0 讨论(0)
  • 2020-12-20 05:38

    I'm not experienced with OSX, but the Mouse Events have the option to check the modifier keys. So something along these lines should work:

    DOMElement.addEventListener("click",function(event){
       // either check directly the button
       if (event.button == 2){}
       // or
       if (event.ctrlKey || event.altKey || event.metaKey){
           // do stuff
       }  
    });
    
    0 讨论(0)
提交回复
热议问题