programing tip

"Ctrl"/ "Shift"+ 마우스 왼쪽 버튼 클릭을위한 JavaScript 또는 jQuery 이벤트 핸들러

itbloger 2020. 12. 11. 07:55
반응형

"Ctrl"/ "Shift"+ 마우스 왼쪽 버튼 클릭을위한 JavaScript 또는 jQuery 이벤트 핸들러


다음과 같은 이벤트를 처리 할 수 ​​있습니까?

  • Ctrl + 마우스 왼쪽 버튼 클릭;
  • Shift + 마우스 왼쪽 버튼 클릭;
  • Alt+ JavaScript , jQuery 또는 기타 프레임 워크를 사용하여 마우스 왼쪽 버튼 클릭 .

가능하다면 코드 예제를 제공하십시오.


다음과 같이 할 수 있습니다 (클릭 핸들러의 경우 jQuery이지만 모든 프레임 워크는 중요한 부분에서 작동합니다).

$(selector).click(function(e) {
  if(e.shiftKey) {
    //Shift-Click
  }
  if(e.ctrlKey) {
    //Ctrl+Click
  }
  if(e.altKey) {
    //Alt+Click
  }
});

if위와 같이 클릭 핸들러 내부에서 원하는 것을 처리 하십시오.


핫키 라는 JQuery 플러그인을 사용하는 경우 아래 특수 키를 처리 할 수 ​​있습니다.

$(document).bind('keydown', 'Ctrl+c', fn);

최근에 나는 e.ctrlKeyMAC에서 작동하지 않는다는 점에서 문제가 발생했습니다 . Macintosh에서는 Command + Click을 사용하여 동일한 효과를 얻을 수 있습니다.

위의 대부분의 답변은 이미 jQuery 사용을 가정하고 있으므로 jQuery에서 제공하는 e.metaKey속성을 간단히 사용할 수 있습니다 .

예 :

$(selector).click(function(e) {
  if(e.shiftKey) {
    //Shift-Click
  }
  if(e.metaKey) {
    //Ctrl+Click on Windows & Command+Click on Mac.
  }
  if(e.altKey) {
    //Alt+Click
  }
});

참고 URL : https://stackoverflow.com/questions/2485345/javascript-or-jquery-event-handlers-for-ctrl-shift-mouse-left-button-click

반응형