메뉴 건너뛰기

?

단축키

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>




  1. 자바스크립트로 네트워크 연결 확인하기 (Navigator onLine Property)

    Date2015.06.19 Views6197
    Read More
  2. 정규식을 이용한 실시간 콤마(comma) 넣기

    Date2015.06.19 Views7876
    Read More
  3. 정규식을 이용한 콤마(comma) 제거하기

    Date2015.06.19 Views6804
    Read More
  4. 텍스트박스(input type = "text") 숫자 증가, 감소 시키기 - 쇼핑몰 주문 수량

    Date2015.06.19 Views12288
    Read More
  5. Checkbox : 체크박스 체크여부 확인

    Date2015.06.19 Views19010
    Read More
  6. 마우스 드래그, 오른쪽 팝업메뉴, 선택 막기 (IE11, 파이어폭스, 크롬 확인)

    Date2015.06.19 Views8577
    Read More
  7. 예제 - 자바스크립트로 현재 달의 달력 만들기 (calendar)

    Date2015.06.19 Views10063
    Read More
  8. 핸드폰 번호 일부 마스킹크 작업 (정규식 이용)

    Date2015.06.19 Views10741
    Read More
  9. 창에 대한 정보얻기 (창 크기, 창 위치)

    Date2015.06.19 Views7297
    Read More
  10. Location 객체 - URL 파싱 - URL에서 전달인자 추출하기 함수 작성

    Date2015.06.19 Views8523
    Read More
  11. 예제 - 이미지를 원본 크기로 볼 수 있도록 새창으로 열기 확장 (리사이징 및 이미지 드래그)

    Date2015.06.19 Views6798
    Read More
  12. 창 크기 최대화 시키기

    Date2015.06.19 Views12228
    Read More
  13. JSON API - JSON.parse(), JSON.stringify() ( json 형태의 문자열을 JSON객체로 , JSON객체를 문자열로 )

    Date2015.06.19 Views6289
    Read More
  14. 자바스크립트 API 문서

    Date2015.06.19 Views9087
    Read More
  15. 공백 검사 함수

    Date2015.06.19 Views14624
    Read More
  16. 자바스크립트 아이디 기억하기 기능 구현 (쿠키저장)

    Date2015.06.19 Views10924
    Read More
  17. [라디오버튼 오류 체크] 간단한 문제 예제

    Date2015.06.19 Views7712
    Read More
  18. iframe사용시 높이 자동 조절

    Date2015.06.19 Views6958
    Read More
  19. 이벤트 - 페이지 로드 후 이벤트 처리하기 ( window.onload )

    Date2015.06.19 Views10871
    Read More
  20. jquery offset()을 이용한 부드러운 스크롤 이동

    Date2016.09.01 Views7277
    Read More
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

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

© k2s0o1d4e0s2i1g5n. All Rights Reserved