JS : jQuery없이 마우스 오른쪽 버튼을 탐지합니다 (인라인)
-
14-11-2019 - |
문제
여러 개의 링크가 포함 된 테이블을 구축하는 함수를 호출합니다.
링크가 오른쪽 또는 왼쪽 마우스로 클릭한지 확인하고 싶습니다.
나는 Per <a>
하이퍼 링크에 다음 부분을 추가하려고 시도했다.
onmousedown="function mouseDown(e){
switch (e.which) {
case 1: alert('left'); break;
case 2: alert('middle'); break;
case 3: alert('right'); break; }
}"
.
그러나 링크를 클릭하면 아무 일도 일어나지 않습니다.
해결책
HTML :
<a href="#" onmousedown="mouseDown(event);">aaa</a>
.
자바 스크립트 :
function mouseDown(e) {
e = e || window.event;
switch (e.which) {
case 1: alert('left'); break;
case 2: alert('middle'); break;
case 3: alert('right'); break;
}
}
.
데모 .
다른 팁
e.button을 사용하는 브라우저를 지원하는 Xdazz의 답변을 수정하고 값을 표준화하며 E.Which에 저장합니다.추가 된 줄은 jQuery 라이브러리에서 사용되는 것입니다.
function mouseDown(e) {
e = e || window.event;
if ( !e.which && e.button !== undefined ) {
e.which = ( e.button & 1 ? 1 : ( e.button & 2 ? 3 : ( e.button & 4 ? 2 : 0 ) ) );
}
switch (e.which) {
case 1: alert('left'); break;
case 2: alert('middle'); break;
case 3: alert('right'); break;
}
}
. 제휴하지 않습니다 StackOverflow