메뉴 건너뛰기

?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <title>Disabling right click menu using javascript</title>

 </head>
 
 <body>
  테스트 : <input type="text"/>
 </body>
 <script>

    //기본동작 수행을 금지 Type1
    function blockEvent(e){        
         console.log("blockEvent:"+e);
         if(e){ 
              e.preventDefault(); //DOM 레벨 2
         }else{             
              event.keyCode = 0;
              event.returnValue = false; //IE
         }
    }
    
    //기본동작 수행을 금지 Type2
    function _stopEvent(e) {
        if (window.event) { //IE            
            window.event.cancelBubble = true; //전파 방지
            window.event.returnValue = false; //기본 동작 수행방지
        }
        //DOM 레벨 2
        if (e && e.stopPropagation && e.preventDefault) {
            e.stopPropagation(); //이벤트 전파 중지
            e.preventDefault(); //기본 동작 수행방지
        }
    }

    //이벤트 등록을 처리해주는 함수 (크로스 브라우징)
    function _addEvent(element, eventType, handler) {       
        if (window.addEventListener) {
            element.addEventListener(eventType, handler, false)
        } else {
            if (window.attachEvent) { //IE8이하 버전에서
                element.attachEvent("on" + eventType, handler)
            }
        }
    }

    //마우스 드래그, 오른쪽 팝업메뉴, 선택 막기
    function _addBlockEvent() {
        _addEvent(document"dragstart", _stopEvent); //마우스 드래그  방지
        _addEvent(document"selectstart", _stopEvent); //마우스 선택 방지
        _addEvent(document"contextmenu", _stopEvent); //마우스 오른쪽 클릭 시 팝업메뉴 막기
        if (document.body && document.body.style.MozUserSelect != undefined) { 
            document.body.style.MozUserSelect = "none" //파이어폭스에서 마우스 선택 방지
        }
    }


    //특정키 사용을 방지
    //이 함수는 복사, 붙여넣기의 단축키인 ctrl+c, ctrl+v 키를 막음
    document.onkeydown = function(e){

        var code = document.all ? event.keyCode : e.keyCode;
        var ctrl = document.all ? event.ctrlKey : e.ctrlKey;

        if (ctrl && (code==86 || code==67)) {
            blockEvent(e);
        }
    }
    
    //JavaScript 오른쪽 마우스 사용금지 함수 (IE용)

    function clickIE4(){
        //console.log("e:"+event+"event.button="+event.button);
        //event.button == 0 : 마우스 왼쪽 버튼
        //event.button == 1 : 마우스 가운데 버튼(휠버튼)
        //event.button == 2 : 마우스 오른쪽 버튼

        if (event.button==2 ){
            event.keyCode = 0;
               event.returnValue = false; //IE

            //alert("오른쪽 마우스 사용을 허용하지 않습니다.");
            //blockEvent();
            
            return false;
        }    
    }

    //JavaScript 오른쪽 마우스 사용금지 함수 
    function clickNS4(e){

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

    //JavaScript 오른쪽 마우스 사용금지 함수 (크로스 브라우징 처리)
    function rightbutton(e)
    {
        if (navigator.appName == 'Netscape' &&  (e.which == 3 || e.which == 2))
            return false;
        else if (navigator.appName == 'Microsoft Internet Explorer' 
                                    && (event.button == 2 || event.button == 3))
        {
            alert("오른쪽 마우스 사용을 허용하지 않습니다.");
            return false;
        }
        return true;
    }


    //마우스 드래그, 오른쪽 팝업메뉴, 선택 막기 함수 실행.
    _addBlockEvent();


    //document.oncontextmenu=new Function("return false")
    //document.oncontextmenu= function(e) { _stopEvent(e); };
    //document.onmousedown=_stopEvent;

    // --> 
  </script>
</html>




List of Articles
번호 제목 날짜 조회 수
147 주민번호 입력시 생일 자동입력 file 2014.03.01 5621
146 Textarea 글자수 체크 2014.03.01 5651
145 arguments object 2016.09.21 5652
144 javascript 에서 제공하는 3가지 종류의 팝업박스 2016.09.21 5657
143 선택된 select 의 option 값을 다른 select로 넘겨주기 2014.03.01 5668
142 우클릭 금지 2016.12.23 5701
141 JavaScript 날짜관련함수 2014.02.27 5702
140 checkbox 한개 클릭으로 다른모든 checkbox 클릭되게 하기 2014.03.01 5709
139 새창을 띠워서 focus주기 2014.03.01 5715
138 문자열 바꾸기 2015.02.03 5729
137 이전, 위로 이동 2016.12.23 5740
136 top 부분이 고정되는 슬라이딩 메뉴입니다 file 2014.03.01 5752
135 3자리마다 콤마찍기 2014.02.27 5755
134 자바스크립트 모음 2016.12.22 5778
133 select 당일 날짜 출력 file 2014.03.01 5780
132 (소스)jqury 롤오버 버튼 쉽게 만들기 file 2014.03.01 5785
131 스타일로 제목 자르기 2016.09.12 5833
130 iframe 높이 자동으로 잡아주기 2014.03.01 5855
129 간단하게 우클릭 막는방법 2016.09.11 5879
128 셀렉트(select) change href 이벤트 2016.12.23 5899
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved