웹 페이지에서 마우스 오른쪽 버튼을 클릭하지 않으려면 어떻게합니까?


316

JavaScript를 사용하지 않고 웹 페이지를 마우스 오른쪽 버튼으로 클릭하지 않도록 설정할 수 있습니까? 대부분의 브라우저에서 사용자가 자바 스크립트를 비활성화 할 수 있기 때문에이 질문을합니다.

그렇지 않은 경우 JavaScript를 사용하여 오른쪽 클릭을 비활성화하려면 어떻게합니까?


130
오른쪽 클릭을 사용 중지하면 보안이 아니며 사용자를 성가 시게합니다. 이 기능을 비활성화하지 않는 브라우저는 가치가 없지만 처음에 브라우저를 사용하는 사이트는 끔찍합니다.
Dan Olson

17
콘텐츠를 원하지 않으면 웹에 게시해서는 안됩니다. :) 최신 브라우저는 오른쪽 클릭을 비활성화하는 JavaScript의 기능을 무시할 수도 있습니다. Firebug / Web Dev Toolbar와 같은 도구는 보호 기능을 쓸모 없게 만듭니다.
epascarello 2009

7
다음은 오른쪽 클릭을 다시 활성화하는 작은 chrome / greesemonkey 사용자 스크립트입니다 : dl.dropbox.com/u/464119/Programming/javascript/…
ripper234

31
정말 @ DanOlson ... 자신의 오른쪽 클릭 메뉴를 코딩하려면 어떻게해야합니까? cPanel에서 찾을 수 있습니다.
Codesmith

30
@epascarello 어떤 경우에는 실제로 존재가 성가 시게 사용자 실제로 수도 그것이 필요하고 그것을 떠나하지 않습니다 마우스 오른쪽 버튼으로 클릭을 해제하면 사용자 bceause, 키오스크 단말기에 같이 필수적이라고있다
아람

답변:


525

"contextmenu"이벤트에 대한 이벤트 리스너를 추가하고 preventDefault()메소드를 호출하여 JavaScript로이를 수행 할 수 있습니다 .

document.addEventListener('contextmenu', event => event.preventDefault());

그것은 말하지 마십시오 : 그것을하지 마십시오.

왜? 성가신 사용자 외에는 아무것도 달성하지 못하기 때문입니다. 또한 많은 브라우저에는 오른쪽 클릭 (컨텍스트) 메뉴를 비활성화 할 수 없도록하는 보안 옵션이 있습니다.

왜 원하는지 잘 모르겠습니다. 그런 식으로 소스 코드 나 이미지를 보호 할 수 있다고 잘못 생각한 경우 다시 생각하십시오. 할 수 없습니다.


86
oncontextmenu="return false"몸이 아닌 다른 물건을 사용 하는 것은 예를 들어 캔버스에서 의미가있을 수 있습니다.
AdrienBrault

62
우리는 키오스크 컴퓨터에 배포하고 있으며 사용자가 페이지를 새로 고치지 못하도록이 방법을 선택했습니다.
Todd Horst

21
이 경우에는 @ToddHorst UI가없는 브라우저의 특수 "키오스크"버전을 사용합니다. 일반적으로 컨텍스트 메뉴 없이도 사용할 수 있습니다. :)
mihi

17
터치 가능 시스템은 때때로 긴 탭과 같은 특정 터치 이벤트를 마우스 오른쪽 단추로 매핑하여 상황에 맞는 메뉴를 엽니 다. 그러나이 동작은 바람직하지 않으며이를 방지하는 유일한 의미있는 방법은 상황에 맞는 메뉴를 완전히 비활성화하는 것 같습니다.
또는 매퍼

58
오래된 스레드이지만 누군가가 그것을 읽는 경우, 모든 웹 개발자가 자신을 위해 웹 사이트를 만들지는 않지만 때로는 고객이 귀하에게 와서 오른쪽 클릭을 비활성화해야한다고 주장 할 때, 그가 그것을 할 다른 개발자를 찾을 것이라고 확신 할 때 망설임없이
Danny22

123

하지마

하지 마십시오.

어떤 작업을 수행하더라도 사용자가 웹 사이트의 모든 데이터에 완전히 액세스하지 못하게 할 수는 없습니다. 브라우저에서 Javascript를 끄거나 NoScript와 같은 플러그인을 사용하여 코딩하는 모든 Javascript를 무례하게 렌더링 할 수 있습니다. 또한 사용자가 사이트에 대해 단순히 "소스보기"또는 "페이지 정보보기"(또는 wget 사용) 기능을 비활성화 할 수있는 방법이 없습니다.

노력할 가치가 없습니다. 실제로 작동하지 않습니다. 그것은 당신의 사이트를 사용자에게 적대적으로 만들 것입니다. 그들은 이것을 알아 차리고 방문을 멈출 것입니다. 이 작업에는 아무런 이점이 없으며, 노력 낭비와 트래픽 손실 만 발생합니다.

하지마

업데이트 : 이 작은 주제는 시간이 지남에 따라 논쟁의 여지가있는 것으로 보입니다. 그럼에도 불구하고, 나는이 질문에 대한 답을 기다립니다. 때로는 정답이 문자 그대로의 응답이 아닌 조언입니다.

사용자 정의 상황에 맞는 메뉴 를 만드는 방법을 찾기 위해이 질문을 우연히 본 사람들 은 다음과 같은 다른 곳을 찾아야합니다.


229
와우 나는 이것이 받아 들여진 대답이라고 믿을 수 없다. 특정 조건 하에서 웹 애플리케이션에서 마우스 오른쪽 단추 클릭을 제거하는 데 유효한 용도가 많이 있습니다.
GAgnew

84
실제 답변은 다음과 같아야합니다.<body oncontextmenu="return false;">
Sebastián Grignoli 5

18
@GAgnew : 상황에 맞는 메뉴를 바꾸는 데 유효한 용도가 있습니다. 이 비활성화 rightclicks에 유효한 사용자는 무조건 없습니다 및 유용한 방법 - 그들을 취급하지 않고
ThiefMaster

80
사용자가 HTML5 비디오 게임을 만들려면 오른쪽 클릭을 비활성화하면 매우 유용 할 수 있습니다. 일반적으로 이것은 바람직하지 않지만 적절한 컨텍스트없이 "DO N'T"라고 말하는 것만으로는 도움이되지 않습니다.
Robson França

51
나도 -1 이 답변은 도움이되지 않습니다. 마우스 오른쪽 버튼을 클릭하지 않는 데는 여러 가지 이유가 있습니다. 예를 들어, 병원이 프론트 데스크에서 사용하는 웹 응용 프로그램을 만들었지 만 사용자는 기술적으로 정통하지 않습니다. 응용 프로그램이 웹 브라우저에서 실행되고 있지만 마우스 오른쪽 버튼을 클릭 할 때 모든 메뉴 옵션이 나타나는 이유를 이해하지 못합니다. 우리는 응용 프로그램의 일부라고 생각한 사람들로부터 옵션이 무엇인지 묻는 수많은 도움 질문을 받았습니다. 이 경우에는 사용하지 않는 것이 좋으며 다른 많은 웹 응용 프로그램에서도 가능합니다.
니콜라스

66

원래 질문은 사용자가 JavaScript를 비활성화 할 수 있다는 점에서 마우스 오른쪽 버튼을 중지하는 방법에 관한 것이 었습니다 .

예를 들어 HTML5 게임에서 마우스 오른쪽 버튼을 클릭하는 것과 같습니다. 위의 인라인 코드로 수행 할 수 있거나 조금 더 좋은 것은 다음과 같습니다.

document.addEventListener("contextmenu", function(e){
    e.preventDefault();
}, false);

당신이 게임을하는 경우에, 다음 오른쪽 클릭 버튼을 발사 기억 하려면 contextmenu 이벤트를 -뿐만 아니라 일반 화재 mousedown을 하고 와 mouseUp 도 이벤트를. 당신은 이벤트의 점검 할 필요가 그래서 있는 권리 이벤트를 발사한다 (=== 3) 마우스 버튼을가 (이 === 2) 중간 왼쪽 (=== 1)이었다 있는지 확인하기 위해 속성을, 또는.

jQuery의 예제는 다음과 같습니다. 마우스 오른쪽 버튼을 누르면 mousedown 이벤트, contextmenu 이벤트 및 mouseup 이벤트의 세 가지 이벤트가 발생합니다.

// With jQuery
$(document).on({
    "contextmenu": function(e) {
        console.log("ctx menu button:", e.which); 

        // Stop the context menu
        e.preventDefault();
    },
    "mousedown": function(e) { 
        console.log("normal mouse down:", e.which); 
    },
    "mouseup": function(e) { 
        console.log("normal mouse up:", e.which); 
    }
});

따라서 게임에서 왼쪽 및 오른쪽 마우스 버튼을 사용하는 경우 마우스 처리기에서 일부 조건부 논리를 수행해야합니다.


dom.event.contextmenu.enabledFirefox에서 활성화 한 경우 mousedownmouseup이벤트 가 활성화 contextmenu되지 않더라도 계속 발생 합니까?
robertc

43

마우스 오른쪽 버튼을 클릭하려고 할 때마다 사용자에게 메시지를 알리는 것에 신경 쓰지 않으면 본문 태그에 추가하십시오.

<body oncontextmenu="return false;">

마우스 오른쪽 버튼뿐만 아니라 키보드에서도 상황에 맞는 메뉴에 대한 모든 액세스를 차단합니다.

그러나 다른 답변에서 언급했듯이 실제로 마우스 오른쪽 버튼 클릭 비활성화 프로그램을 추가하는 것은 의미가 없습니다. 기본 브라우저 지식이있는 사람이라면 누구나 소스를보고 필요한 정보를 추출 할 수 있습니다.


예,하지만 기본 브라우저 지식이 부족한 것으로 알고있는 사람과 이미지를 간단히 공유하고 싶을 때가 있습니다. 오른쪽 클릭을 사용 중지하는 것은 100 % 완전하지는 않지만 몇 분 동안 이미지를 게시하여 해당 사람이 볼 수있게하는 경우 매우 안전합니다.
WillO

터치 가능 시스템은 때때로 긴 탭과 같은 특정 터치 이벤트를 마우스 오른쪽 단추로 매핑하여 상황에 맞는 메뉴를 엽니 다. 그러나이 동작은 바람직하지 않으며이를 방지하는 유일한 의미있는 방법은 상황에 맞는 메뉴를 완전히 비활성화하는 것 같습니다.
또는 매퍼

@ WillO : 나는 비슷한 유스 케이스를 제공해야하지만 참고로 사용자는 항상 스크린 샷을 사용 합니다.
Hassan Baig

28

jquery 팬이라면 이것을 사용하십시오.

    $(function() {
        $(this).bind("contextmenu", function(e) {
            e.preventDefault();
        });
    }); 

4
이것은 이유없이 jQuery를 사용하고 있습니다. 이것은 Mr. Speaker의 답변에서 발견 된 단일 JavaScript 문과 정확히 동일합니다. 이는 1 년 반 전에 게시되었습니다. 그런데 그 대답에는 jQuery 솔루션도 포함되어 있습니다.이 솔루션은 다시 필요하지 않습니다. 이 답변을지지 한 사람도 이것이 무엇을하는지 알고 있습니까? 문서 준비 이벤트가 상황에 맞는 메뉴 표시를 중지하기를 기다리는 이유는 무엇입니까? 이 this이벤트가 ready 이벤트 내에서 사용되는 이유는 무엇 입니까? 왜 bind대신에 사용 on합니까?
Ugh

20

첫째, 클라이언트 측 기능을 사용하지 않으면이 작업을 수행 할 수 없습니다. 여기에서 자바 스크립트가 실행됩니다.

둘째, 최종 사용자가 사이트에서 소비 할 수있는 것을 제어하려는 경우 해당 정보를 표시하는 방법을 다시 생각해야합니다. 이미지에는 브라우저 없이도 HTTP를 통해 가져올 수있는 공개 URL이 있습니다.

인증은 누가 어떤 리소스에 액세스 할 수 있는지 제어 할 수 있습니다.

이미지에 포함 된 워터 마킹은 이미지가 특정 개인 / 회사에서 온 것임을 증명할 수 있습니다.

하루가 끝나면 리소스 관리는 실제로 사용자 / 게스트 관리입니다.

인터넷의 첫 번째 규칙, 만약 당신이 그것을 원하지 않는다면 공개하지 마십시오!

인터넷의 두 번째 규칙은 인터넷을 원하지 않는다면 인터넷에 두지 마십시오!


20

대부분의 사람들이 말했듯이 사람들이 이미지를 다운로드하지 못하도록 막는 것이 목표라면 오른쪽 클릭을 사용 중지하면 거의 효과가 없습니다.

이미지를 보호하려고한다고 가정하면 대체 방법은 다음과 같습니다.

사용자는 플래시 플레이어를 사용하여 다운로드 할 수 없지만 쉽게 화면을 캡처 할 수 있습니다.

좀 더 어색하게하려면 이미지를 투명한 이미지가 포함 된 div의 배경으로 만듭니다.

<div style="background-image: url(YourImage.jpg);">
   <img src="transparent.gif"/>
</div>

이미지의 우연한 도난을 방지하기에 충분하지만 (샘플은 아래 참조) 이러한 모든 기술과 마찬가지로 html에 대한 기본적인 이해로이기는 것은 쉽지 않습니다.


2
코드를 더 난독 화하기 위해 이미지를 base64로로드 할 수도 있습니다.
Miguel Bartelsman

16

Javascript를 사용하지 않으면 원하는 것을 수행 할 수 없습니다. 사용하기로 선택한 다른 기술은 서버 측에서 웹 페이지를 작성하여 브라우저로 보낼 수 있도록 도와줍니다.

좋은 솔루션은 없으며 Javascript가 없으면 솔루션 기간이 없습니다.


1
그리고 심지어는 우회하기 쉬운 것은 말할 것도없고 사용자에게 성가시다.
Manos Dilaverakis 2009

1
'오른쪽 클릭이 비활성화되어 있습니다'라는 모달 팝업이있는 페이지 만 본 후 닫으면 오른쪽 클릭 메뉴가 표시됩니다. 또한 트랙 패드를 사용하여 스크롤 할 때 메시지를 표시하는데, 이는 매우 성가시다.
Pete Kirkham

1
예, 일반적으로 사람들이 이미 하드 드라이브에있는 이미지를 "스틸 링"하는 것을 방지하기 때문에 특히 성가시다.하지만 검색이 addons.mozilla.org/en-US/firefox/addon/240 . 그 놈들 ...
Calvin

2
나는 이것에 대한 거의 모든 대답이 "확실히 자바 스크립트를 사용하십시오!"라는 것을 좋아합니다.
찰스 우드

14

사용자가 단순히 이미지를 저장하지 못하도록하는 것이 목표라면 클릭 한 대상이 이미지인지 확인하고이 경우 오른쪽 클릭 만 비활성화 할 수 있습니다. 따라서 오른쪽 클릭을 다른 용도로 사용할 수 있습니다. 위 코드에서 가져온 것 :

document.addEventListener("contextmenu", function(e){
    if (e.target.nodeName === "IMG") {
        e.preventDefault();
    }
}, false);

이것은 이미지를 저장하는 가장 쉬운 방법을 없애는 것이지만 여전히 가능합니다.


이것은 내 의견으로는 갈 수있는 가장 좋은 방법입니다. 웹 사용자는 때때로 올바른 클릭 기능이 유용하지만 성 가시지 않고 작동하는 쉽고 간단한 솔루션입니다.
Ben

9
<!DOCTYPE html>
<html>
<head>
<script type='text/javascript' src='http://code.jquery.com/jquery-1.4.4.min.js'></script>
<script type='text/javascript'>//<![CDATA[ 
$(function(){
$('img').bind('contextmenu', function(e){
return false;
}); 
});//]]>  
</script>
</head>
<body>
    <img src="http://www.winergyinc.com/wp-content/uploads/2010/12/ajax.jpg"/>
</body>



2
@ aravind3 나는 당신의 예를 사용했고 그것은 대단합니다! 내 이미지는 여전히 클릭 가능하고 예상대로 작동하지만 다운로드 할 수 없습니다. 마우스 오른쪽 버튼을 클릭하지 않으려는 이유는 이미지 만 원하고 바로 떠나는 방문자가 이탈률에 영향을 미치기 때문입니다. 적어도이 방법으로, 내 이탈률은 그다지 파악하는 데 1 ~ 2 분이 걸릴 수 있으므로 그리 나쁘지 않습니다 :) Cheers aravind3 !!!!
coolydude

6

아래와 같이하십시오 (firefox에서도 작동합니다).

$(document).on("contextmenu",function(e){

     if( e.button == 2 ) {
         e.preventDefault();
          callYourownFucntionOrCodeHere();
     }
return true;
});

5

이 코드를 <head>페이지 의 태그에 넣으십시오 .

<script type="text/javascript"> 
function disableselect(e){  
return false  
}  

function reEnable(){  
return true  
}  

//if IE4+  
document.onselectstart=new Function ("return false")  
document.oncontextmenu=new Function ("return false")  
//if NS6  
if (window.sidebar){  
document.onmousedown=disableselect  
document.onclick=reEnable  
}
</script>

자바 스크립트가 활성화 된 경우에만 전체 웹 페이지를 마우스 오른쪽 버튼으로 클릭 할 수 없습니다.


파이어 폭스에서는 작동하지 않습니다. 양식 입력에 대한 입력 선택을 비활성화합니다 :(
ALWAN

5

이 코드를 사용하여 모든 웹 페이지에서 마우스 오른쪽 버튼을 클릭하지 못했습니다. 이 코드를 사용할 수 있습니다

jQuery(document).ready(function(){
  jQuery(function() {
        jQuery(this).bind("contextmenu", function(event) {
            event.preventDefault();
            alert('Right click disable in this site!!')
        });
    });
});
<html>
  <head>
    <title>Right click disable in web page</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
  </head>
  <body>
    You write your own code
  </body>
</html>


4

물론, 여기에있는 다른 모든 의견에 따르면, 이것은 효과가 없습니다.

한 번 클라이언트를 위해 간단한 Java 애플릿을 구성하여 화면 캡처를 통해 이미지 캡처를 수행했으며 비슷한 기술을 고려할 수도 있습니다. 그것은 한계 내에서 작동했지만 여전히 시간 낭비라고 생각합니다.


4
    <script>
        window.oncontextmenu = function () {
            console.log("Right Click Disabled");
            return false;
        }
    </script>

3

이 시도

<script language=JavaScript>
//Disable right mouse click Script

var message="Function Disabled!";

function clickIE4(){
if (event.button==2){
alert(message);
return false;
 }
}

function clickNS4(e){
if (document.layers||document.getElementById&&!document.all){
if (e.which==2||e.which==3){
alert(message);
return false;
}
}
}

if (document.layers){
document.captureEvents(Event.MOUSEDOWN);
document.onmousedown=clickNS4;
}
else if (document.all&&!document.getElementById){
document.onmousedown=clickIE4;
}

document.oncontextmenu=new Function("alert(message);return false")

</script>

3

웹 페이지에서 마우스 오른쪽 버튼을 클릭하지 않는 것은 간단합니다. 이 작업을 수행 할 JavaScript 코드는 몇 줄뿐입니다. 아래는 JavaScript 코드입니다.

$("html").on("contextmenu",function(e){
   return false;
});

위의 코드에서 태그를 선택했습니다. 세 줄의 코드 만 추가하면 웹 페이지를 마우스 오른쪽 버튼으로 클릭 할 수 없게됩니다.

출처 : jQuery를 사용하여 웹 페이지에서 마우스 오른쪽 버튼 클릭, 복사, 잘라 내기 비활성화


2
 $(document).ready(function () {
            document.oncontextmenu = document.body.oncontextmenu = function () { return false; }
        });

2

나는 늦었다는 것을 알고 있지만, 내가 제공 할 답변에 대한 몇 가지 가정과 설명을 만들고 싶다.

마우스 오른쪽 버튼 클릭을 비활성화 할 수 있습니까

Javascript를 사용하지 않고 웹 페이지를 마우스 오른쪽 버튼으로 클릭하지 않도록 설정할 수 있습니까?

예, JavaScript를 사용하면 발생하는 모든 이벤트를 비활성화 할 수 있으며 대부분 javaScript를 통해서만 수행 할 수 있습니다. 방법은 다음과 같습니다.

  1. 작동하는 하드웨어

  2. 키 코드에 대해 배울 수있는 웹 사이트 또는 어딘가에 있습니다. 당신이 필요하기 때문에.

이제 Enter 키 누르기를 차단하고 싶다고 가정 해 봅시다. 코드는 다음과 같습니다.

function prevententer () {
 if(event.keyCode == 13) {
  return false;
 }
}

마우스 오른쪽 버튼을 클릭하려면 다음을 사용하십시오.

event.button == 2

대신에 event.keyCode. 그리고 당신은 그것을 차단합니다.

대부분의 브라우저에서 사용자가 Javascript로 비활성화 할 수 있기 때문에 이것을 묻고 싶습니다.

당신이 옳습니다. 브라우저를 사용하면 JavaScript자바 스크립트가 모든 작업을 수행 할 수 있습니다. 아무것도 설정할 필요가 없으며 헤드에 스크립트 속성 만 있으면됩니다.

왜 비활성화하지 않아야합니까?

그것에 대한 주요 대답과 빠른 대답은 사용자가 그것을 좋아하지 않을 것 입니다. 누구나 자유가 필요합니다. 아무도 막히거나 막히기를 원치 않습니다. 몇 분 전에 사이트에 있었기 때문에 오른쪽 클릭을 막았는데 그 이유를 느꼈습니다. 소스 코드를 보호해야합니까? 그런 다음 여기 ctrl+shift+J를 열었고 Console이제 HTML-code탭으로 이동할 수 있습니다 . 가서 멈춰 이렇게하면 앱에 보안 계층이 추가되지 않습니다.

마우스 오른쪽 버튼에는 복사, 붙여 넣기, Google에서 '텍스트'(Chrome) 등을 검색하는 등 많은 사용자 메뉴가 있습니다. 따라서 사용자는 많은 키보드 단축키를 기억하는 대신 쉽게 액세스 할 수 있기를 원합니다. 누구나 컨텍스트를 복사하거나 이미지를 저장하거나 원하는 작업을 수행 할 수 있습니다.

브라우저는 마우스 탐색을 사용합니다. Opera 와 같은 일부 브라우저 는 마우스 탐색을 사용하므로이를 비활성화하면 사용자가 사용자 인터페이스와 스크립트를 싫어하게됩니다.

이것이 기본이었습니다. 소스 코드 hehehe를 저장하는 방법에 대해 좀 더 쓰려고했지만 귀하의 질문에 대한 답이 되겠습니다.

키 코드에 대한 참조 :

키 및 마우스 버튼 코드 :

http://www.w3schools.com/jsref/event_button.asp

https://developer.mozilla.org/en-US/docs/Web/API/event.button (사용자들도 높이 평가할 것입니다).

마우스 오른쪽 버튼을 클릭하지 않으시겠습니까?

http://www.sitepoint.com/dont-disable-right-click/


1

자바 스크립트 :

document.getElementsByTagName("html")[0].setAttribute("oncontextmenu", "return false"); 

0

중요 사항 : 브라우저OS 에 따라 이러한 예방 여부가 결정됩니다!

해야합니까 ? 없음 . 그것은 사용자를 방해하지는 않지만, 단지 그를 귀찮게 할 것입니다.

사용할 수 있습니까? . 예 : 팝업 메뉴를 사용자 정의하려는 일부 웹 앱, 실수로 마우스 오른쪽 버튼을 클릭 할 때 사용자가 화가 날 수있는 게임 내 및 기타 경우.

우분투 16.04에서 크롬 (V65)은 = 당신은 CAN 마우스 오른쪽 단추로 클릭하지 않도록 설정합니다.

Mac OS 10.11의 Chrome (v65) = 오른쪽 클릭을 비활성화 할 수 없습니다 .

Windows 7의 Chrome (v65) = 오른쪽 클릭을 비활성화 할 수 없습니다 .

파이어 폭스 맥 OS 10.11에서 (V41)은 = 당신은 CAN 마우스 오른쪽 단추로 클릭하지 않도록 설정합니다.

Windows 7의 파이어 폭스 (V43)은 = 당신은 CAN 마우스 오른쪽 단추로 클릭하지 않도록 설정합니다.

// Vanilla JS way
document.addEventListener('contextmenu', function(e){
    e.preventDefault();
});

// jQuery way
$(document).bind('contextmenu', function(e) {
    e.preventDefault();
});

0

고려해야 할 몇 가지 사항 :

크롬 저장소에 '오른쪽 클릭 사용'과 같은 브라우저 플러그인이 존재하기 때문에이 문제를 해결할 수 없습니다. 사람들이 문자 그대로 브라우저에서 볼 수 있도록 콘텐츠를 다운로드해야하기 때문에 사람들이 콘텐츠를 다운로드하지 못하게 할 수있는 일은 거의 없습니다. 사람들은 항상 노력하지만 항상 노력합니다.

일반적으로 콘텐츠를 공개해서는 안되는 콘텐츠를 온라인에 올리지 마십시오.

또한, 오른쪽 클릭을 할 수없는 것은 접근성 문제이며 많은 경우 맹인이나 장애인 또는 노인에 대한 불법 차별에 해당합니다. 현지 법률을 확인하십시오. 그러나 미국에서는 시력 문제가있을 수있는 맹인 또는 노인이 법적으로 보호되는 클래스이므로 연방 ADA 형식의 법률에 대해 적극적으로 반대합니다.

따라서이 작업을 수행하고 많은 시간과 노력을 낭비하는 대신이 작업을 귀찮게하지 마십시오. 회사가 소송을 제기하거나 컴플라이언스 감사에 실패 할 수 있습니다.


0

inspect element 옵션을 비활성화하려면이 코드를 사용해보십시오.

    jQuery(document).ready(function() {
    function disableSelection(e) {
        if (typeof e.onselectstart != "undefined") e.onselectstart = function() {
            return false
        };
        else if (typeof e.style.MozUserSelect != "undefined") e.style.MozUserSelect = "none";
        else e.onmousedown = function() {
            return false
        };
        e.style.cursor = "default"
    }
    window.onload = function() {
        disableSelection(document.body)
    };

    window.addEventListener("keydown", function(e) {
        if (e.ctrlKey && (e.which == 65 || e.which == 66 || e.which == 67 || e.which == 70 || e.which == 73 || e.which == 80 || e.which == 83 || e.which == 85 || e.which == 86)) {
            e.preventDefault()
        }
    });
    document.keypress = function(e) {
        if (e.ctrlKey && (e.which == 65 || e.which == 66 || e.which == 70 || e.which == 67 || e.which == 73 || e.which == 80 || e.which == 83 || e.which == 85 || e.which == 86)) {}
        return false
    };

    document.onkeydown = function(e) {
        e = e || window.event;
        if (e.keyCode == 123 || e.keyCode == 18) {
            return false
        }
    };

    document.oncontextmenu = function(e) {
        var t = e || window.event;
        var n = t.target || t.srcElement;
        if (n.nodeName != "A") return false
    };
    document.ondragstart = function() {
        return false
    };
});

1
이 코드 스 니펫에 대해 약간의 단기적인 도움을 제공 할 수 있습니다. 적절한 설명 이것이 문제에 대한 좋은 해결책 인지 보여줌으로써 장기적인 가치를 크게 향상시킬 것이며, 다른 비슷한 질문을 가진 미래 독자들에게 더 유용 할 것입니다. 제발 편집 당신이 만든 가정 등 일부 설명을 추가 할 답변을.
Toby Speight

Chrome에서는이를 재정의하기 가 매우 쉽습니다. 프로필 사진 옆에있는 3 개의 점을 클릭 한 다음 도구> 개발자 도구
sportzpikachu

-1

에 의해 또한 왼쪽 버튼으로 클릭하고 탭을 비활성화 할 수 있습니다 비활성화 바로 click.You이 기능을 사용하여 checking 1 and 0해당

document.onmousedown = rightclickD;
            function rightclickD(e) 
            { 
                e = e||event;
                console.log(e);
                if (e.button == 2) {
                //alert('Right click disabled!!!'); 
                 return false; }
            }

Javascript를 사용하여 HTML이 이미하는 일을하는 것은 엔지니어링이 나쁘고 낭비입니다
honestduane
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.