웹 페이지의 마우스 드래그, 우클릭 해제 방법

사람들이 웹 페이지의 내용를 복사해서 퍼가는 것을 방지하기 위해서 마우스의 드래그나 오른쪽 버튼(정확히는 오른쪽 버튼이 아니라 2번 버튼 클릭, 또는 정황 메뉴) 을 막는 스크립트를 넣는 경우가 많다.

몇일 전 부터 북마킹을  딜리셔스에서 diigo 로 바꾸면서 마우스로 드래그를 못하게 하거나 정황메뉴를 막는 페이지에서는 필요한 부분만 북마킹을 할 수 없게 되었다.

그동안  NoScript 라는 파이어폭스 플러그인을 사용하거나 해제시키는 자바스크립트를 북마킹해 놓고 사용했다.  daum 의 한 블로그 페이지에서  드래그와 마우스 우클릭이 안되서 NoScript 로 스크립트가 동작하지 않게 했더니 본문이 하나도 안나오고 그림과 같이 URL 만 보였다.  스크립트가 다시 본문을 가져오게 한 모양이다.

daum blog noscript

다른 방법을 찾아 보았다.

파이어폭스에서 마우스 우클릭 해제 설정

마우스의 정황메뉴를 사용못하게 한 웹 페이지를 파이어폭스에서 무력화 시키는 방법은 아주 간단하다.

파이어폭스의 설정에 이미 기능이 있었다.

환경설정에서 [고급설정] 을 클릭한다. 그림은 맥의 파이어폭스인데 맥은 Firefox 메뉴아래에 환경설정이 있고, 윈도우즈는 도구 메뉴 속에 있다.

firefox

‘우마우스 메뉴 사용하지 않거나 바꾸기’ 의 체크를 풀고, [확인] 버튼을 누르면 된다. 파이어폭스를 다시 실행시킬 필요 없다.

firefox

이 방법은 정황메뉴를 막아 놓은 페이지에서 정황메뉴가 나오게 하지만, 드래그를 막아 놓은 곳을 해제시키는 것은 아니다.

인터넷익스플로러와 파이어폭스의 북마클릿

인터넷 익스플로러나 파이어폭스 모두 자바스크립트를 실행하게 해서 마우스 이벤트를 막는 자바스크립트를 해제하는 방법도 있다.

다음의 스크립트는 주소창에 넣고 엔터를 치거나, 북마크에 등록해 놓고, 마우스 이벤트를 막아 놓은 페이지에서 등록해 놓은 북마크를 클릭하면 된다.

javascript:function r(d){d.oncontextmenu=null;d.onselectstart=null;d.ondragstart=null;d.onkeydown=null;d.onmousedown=null; d.body.oncontextmenu=null;d.body.onselectstart=null;d.body.ondragstart=null;d.body.onkeydown=null; d.body.onmousedown=null;};function unify(w){r(w.document);if(w.frames.length>0){for(var i=0;i<w.frames.length;i++){try{unify(w.frames[i].window);}catch(e){}};};};unify(self);alert(“ok”);

그림은 맥의 파이어폭스에서 등록하는 화면인데 주소창에 위의 자바스크립트를 저장하면 된다. 내 기억엔 윈도우즈의 인터넷익스프롤러에서 자바스크립트 코드를 북마크 하는 경우 뭐라고 메시지가 났던 것 같은데, 그냥 확인을 누르고 등록하면 된다.

firefox 우클릭 해제

어떤 웹 사이트는 마우스 드래그를 못하게 하는데, 위 자바스크립트를 저장해 놓은 북마크릿을 이용하면 드래그도 풀 수 있다.

위 방법으로 내 사용목적으로 맞지 않는 NoScript 플러그인을 내가 사용하는 파이어폭스 extension 종합 에서 뺐다.

마우스의 드래그와 정황메뉴 차단을 해제하게 하는 방법을 정리한 것은 불펌을 더 조장하기 위한 것이 아니다.  어떻게 사용하느냐는 우리 에게 달려있다.

Related Post


  • 마우스나 키보드를 제어하는 것으로 웹 문서의 저장을 막을 수 있다고 생각하는 자체가 넌센스라고 생각합니다.

    불편을 초래할 뿐이지요.

  • 마우스나 키보드를 제어하는 것으로 웹 문서의 저장을 막을 수 있다고 생각하는 자체가 넌센스라고 생각합니다.

    불편을 초래할 뿐이지요.

  • Pingback: 목소리를 내는 사람()