일반 소스 보기 막기

황제낙엽 2005.11.18 10:29 조회 수 : 3019 추천:134

출처 :: NZEO.COM

소스보기를 방지하는 팁이 몇개 올라와있긴 한데...

소스가 달라서 이렇게 올립니다..^^;

혹시나 있더라도...^^;;;;;;핫;

먼저 이건 제일 많이 공개 되어있는 소스 입니다.. <body> 부분에 넣어주세요..^^

oncontextmenu="return false" ondragstart="return false"

마우스 오른쪽 클릭과 드래그를 방지합니다.

이건 HEAD의 JavaScript 부분에 넣어주시면 되겠습니다~
<!--
        function        KeyEventHandle()
        {
                if(
                ( event.ctrlKey == true && ( event.keyCode == 78 || event.keyCode == 82 ) ) ||
        ( event.keyCode >= 112 && event.keyCode <= 123 ))
                {
                        event.keyCode                = 0;
                        event.cancelBubble        = true;
                        event.returnValue        = false;
                }
        }
        document.onkeydown=KeyEventHandle;
        document.onkeyup=KeyEventHandle;
-->

if 부분의 키코드에 대해서 조금 설명 드릴께요..
먼저 Event.ctrlKey == true 는 예상하신대로.. 컨트롤키가 눌러졌을때를 말합니다.
그리고 연산자 &&(AND) 가 붙어서 Ctrl키와 뒤에 정의된 코드가 같이 눌러졌을때를 말합니다
KeyCode 78번은 키보드 "N"키를 말합니다. 82번은 "R"키를 말합니다.
Ctrl + N 과 Ctrl + R. 즉, 새창띄우기와 새로고침 단축키를 방지합니다.
그리고 112~123사이의 키가 정의된것은 F1과 F12까지의 키를 막습니다.

그아래 event.keyCode = 0; 부분은 입력된 키코드를 0으로 바꿔버리는 명령이구요..
즉 입력된 키를 무효화 시킨다는 의미입니다.
그 아래 두개는 역시나 어플리케이션방지, 고유기능을 무효화 시키는 명령이구요..

제일 아래 두개는 키가 눌려지거나 떼어질때 위 함수를 실행하라는 것입니다~

도움되셨기를..^^

참고로 이 소스만으로 완벽히 막을 수는 없습니다.

익스플로러의 취약점이나 고유명령어로 인해 소스를 완전히 막는건 불가능합니다...

소스를 암호화시키는것도 큰 도움이 되리라 생각합니다..^^;
번호 제목 글쓴이 날짜 조회 수
246 [Gemini] ajax 와 fetch 의 차이 황제낙엽 2025.01.04 3419
245 [검토 완료] 디바이스 카메라로 촬영한 사진을 서버에 업로드하기 샘플 황제낙엽 2024.11.21 3988
244 브라우저에서 이미지를 편집(crop 등) 할 수 있는 오픈소스 Cropper.js 황제낙엽 2024.11.16 3842
243 [ChatGPT] json data 의 정렬 [1] 황제낙엽 2024.07.23 3356
242 DOMContentLoaded 이벤트와 window.onload 이벤트 황제낙엽 2024.07.15 3672
241 fetch() 사용 예제들 황제낙엽 2024.07.09 3382
240 [Copilot] Vanilla JavaScript에서 외부 스크립트 파일에 정의된 함수들을 로드 황제낙엽 2024.06.21 3759
239 [Copilot] ES6 모듈(module) 문법 황제낙엽 2024.06.21 3811
238 [Copilot] JSON 객체 내부 데이터를 순회하면서 조회하는 코드 황제낙엽 2024.06.02 3272
237 [Copilot] JavaScript로 서버에 특정 값을 POST 방식으로 전달하고 응답을 기다리지 않고 바로 종료 황제낙엽 2024.05.31 3616
236 json 데이터 내의 변수명에 prefix 로 type 표현하기 황제낙엽 2024.04.15 3363
235 fetch() 함수 사용 예제 file 황제낙엽 2023.11.23 3607
234 현재 document 의 host 와 port 를 얻는 방법 황제낙엽 2023.10.03 4209
233 (Bard) FileReader 로 여러개의 파일을 read 하는 법 file 황제낙엽 2023.08.23 3664
232 How to build a file upload service with vanilla JavaScript file 황제낙엽 2023.08.22 3715
231 (Bard) JavaScript로 JSON 배열을 작성하는 방법 황제낙엽 2023.08.21 3673
230 모바일 브라우저에서 file input element 를 이용하여 여러장의 이미지를 서버에 전송하려 할때 [1] 황제낙엽 2023.08.21 3703
229 navigator.mediaDevices 황제낙엽 2023.08.21 3798
228 Barcode Detection API 황제낙엽 2023.08.06 3858
227 정규식을 이용한 이메일 검증 스크립트 file 황제낙엽 2023.06.25 2894