2011-02-09 2 views
2

시청자가 내 오른쪽 웹 사이트에 업로드 한 이미지를 다운로드하기 위해 오른쪽 클릭 옵션을 사용하지 못하도록하는 좋은 방법이 있는지 살펴 보았습니다. 페이지 원본의 이미지 URL을 사람들이 볼 수 있으며 이미지 저장 옵션을 비활성화하여 사람들이 찍히지 않도록하는 방법을 제안하는지 궁금합니다. 이 컨텍스트 (마우스 오른쪽 버튼 클릭) 메뉴의 작동을 허용합니다웹 이미지 촬영 방지하기

onload=function(){ 
document.oncontextmenu=function(){return false;} 
} 

당신이 시도 할 수

+5

불가능합니다. 이걸 포기해라. –

답변

1

...

사용자는 그들이이 무슨 일을하는지 알고있는 경우 그래도이 문제를 해결할 수 있습니다.

+1

"키보드의 'Print Screen'버튼이 눈에 띄어 왔다는 것을 알고 있습니다. –

2

더 어렵게 만들고 싶다면 IMG 태그를 사용하지 마십시오. 대신 'background-image'속성을 사용하여 CSS를 사용하여 이미지를 정의하십시오. 더욱 까다로워 지려면 base64 인코딩을 사용하여 페이지에 배치 된 JavaScript를 사용하여 런타임에 해당 속성을 정의하십시오.

1

나는 이것을 이 아니라으로 제안합니다. 그것은 성가시다. 그리고 너는 실제로 자신을 보호하지 않는다.

당신이해야하는 경우는, jQuery를은 아주 쉽게 오른쪽 클릭 메뉴를 비활성화 할 수 있습니다 :

$(document).ready(function(){ 
     $('img').bind("contextmenu",function(){ 
      return false; 
     }); 
    }); 
6

이 해결 못하는 문제입니다.

사람들이 실제로 이미지를 보길 원한다면 여러 가지 방법 (예 : 스크린 샷)을 통해 이미지를 저장하지 못하게 할 수 없습니다. 생각할 수있는 모든 방법은 어쨌든 원하는 것을 수행하지 못하도록 막지 않고 사용자를 괴롭 히게됩니다. 또한 그 이미지를 보는 사람들은 그들에게 관심을 가질 것이라고 생각합니다. 그렇지 않으면 그들은 처음부터 그들을 보지 않을 것입니다. 그래서 우리는 이미 그들에게 사본을 보관할 동기가 있습니다.

사람이 이미지를 저장하지 못하게하는 유일한 방법은 처음에 컴퓨터에 이미지를 복사하지 못하게하는 것입니다. 그리고 다른 컴퓨터에서 뭔가를 표시하면 항상 복사본이 만들어집니다.

사용자가 제어하는 ​​화면에서 이미지를 볼 수있는 장소에 사람들을 초대하고 사진을 찍을 수있는 방법은 없습니다. 야간 경비가있는 보안 사람들이 관중을보고 장치와 같은 카메라를 다루는 사람들을 끌어들이는 현대 영화관을 생각해보십시오.

+1

+1 "해결할 수없는 문제". 대안으로 사설 이미지를 보는 당사자의 개념은 나에게 웃음을 짓지 만 실제로 여기에서 유일한 실행 가능한 옵션입니다. –

+0

답변 해 주셔서 감사합니다. – user606767

0

이미지를 너무 추하게 만들면 아무도 그 사진을 찍지 않을 것입니다.

진지하게, 당신은 무엇에 대해 걱정하고 있습니까?

+2

진지하게, 이것은 대답이 아닙니다. * 아마도 * 댓글. 그러나 그것은 그것을 펴고있다. –

0

이미지에 Microsoft Ajax Seadragon Deep Zoom 뷰어를 사용하면 이미지를 겹치는 타일로 많이 표시 할 수 있습니다. 다시 고집하는 실제적인 고통, 이미지 크기에 따른 어려움, 고해상도 이미지의 경우 'printscreen'은 물건을 훔치려는 사람들에게 유일한 옵션입니다.

덧붙여서 contextmenu는 div보다 이미지 (버블)보다 뛰어납니다. 따라서 전체 문서를 클릭하지 않아도 사람들을 기분을 상하게 할 필요는 없습니다.

프로토 타입 포함 :

$$('.your-image-container-class').each(function(s) {s.oncontextmenu=function(){return false;}});