JavaScript에서 마우스 오른쪽 버튼 클릭 컨텍스트 메뉴를 비활성화하는 방법
'소스보기'나 그와 비슷한 것을 막으려는 것이 아니라 특정 요소에 대한 사용자 정의 컨텍스트 메뉴를 만들고 있습니다.편집 : 답변에 대한 답변 : 나는 이것을 시도했다 :
<a id="moo" href=''> </a>
<script type="text/javascript">
var moo = document.getElementById('moo');
function handler(event) {
event = event || window.event;
if (event.stopPropagation)
event.stopPropagation();
event.cancelBubble = true;
return false;
}
moo.innerHTML = 'right-click here';
moo.onclick = handler;
moo.onmousedown = handler;
moo.onmouseup = handler;
</script>
onContextMenu
이벤트를 캡처하고 이벤트 핸들러에서 false를 리턴하십시오.
event.button
일부 브라우저 에서는 클릭 이벤트를 캡처하고 이벤트를 발생시킨 마우스 버튼을 확인할 수도 있습니다 .
마우스 오른쪽 버튼을 클릭하려고 할 때마다 사용자에게 메시지를 알리는 데 신경 쓰지 않으면 본문 태그에 추가하십시오.
<body oncontextmenu="return false;">
마우스 오른쪽 버튼뿐만 아니라 키보드에서도 컨텍스트 메뉴에 대한 모든 액세스를 차단합니다.그러나 실제로 오른쪽 클릭 비활성화 프로그램을 추가하는 것은 의미가 없습니다. 기본 브라우저 지식이있는 사람은 누구나 소스를보고 필요한 정보를 추출 할 수 있습니다.
나는 이것을 사용했다 :
document.onkeydown = keyboardDown;
document.onkeyup = keyboardUp;
document.oncontextmenu = function(e){
var evt = new Object({keyCode:93});
stopEvent(e);
keyboardUp(evt);
}
function stopEvent(event){
if(event.preventDefault != undefined)
event.preventDefault();
if(event.stopPropagation != undefined)
event.stopPropagation();
}
function keyboardDown(e){
...
}
function keyboardUp(e){
...
}
그런 다음 두 가지 마지막 함수에서 e.keyCode 속성을 잡습니다. e.keyCode == 93 인 경우 사용자가 마우스 오른쪽 버튼을 놓거나 상황에 맞는 메뉴 키를 눌렀다 놓았다는 것을 알고 있습니다.도움이 되길 바랍니다.
사람들이 해당 메뉴를 볼 수 없다는 사실에 페이지가 의존하는 경우 최신 브라우저 (예 : Firefox)를 통해 사용자가 실제로 비활성화할지 여부를 결정할 수 있음을 알아야합니다. 따라서 메뉴가 실제로 비활성화 될 것이라는 보장은 없습니다.
사용자가 컨텍스트 메뉴를 비활성화 할 수 있으므로 컨텍스트 메뉴에 의존 할 수 없습니다. 대부분의 웹 사이트는이 기능을 사용하여 방문자를 성가 시게합니다.
참고URL : https://stackoverflow.com/questions/381795/how-to-disable-right-click-context-menu-in-javascript
'Programming' 카테고리의 다른 글
SQL Server : 개체 이름의 최대 문자 길이 (0) | 2020.07.18 |
---|---|
java.util.zip.ZipException : packageAllDebugClassesForMultiDex 중 중복 항목 (0) | 2020.07.18 |
C # XML 설명서 웹 사이트 링크 (0) | 2020.07.18 |
명령 행을 사용하여 시작된 후 프로세스의 STDERR / STDOUT을 리디렉션 하시겠습니까? (0) | 2020.07.18 |
Node.js 템플릿을위한 Jade와 EJS의 장단점은 무엇입니까? (0) | 2020.07.18 |