2008-09-12 6 views
0

Internet Explorer 6에서 특정 키 (Ctrl 및 Backspace)를 비활성화해야합니다. 레지스트리 해킹이 있습니까? IE6이어야합니다. 감사.IE 6의 특정 키 사용 안 함

긴 편집 :

@apandit : 으악. 백 스페이스에 대해 좀 더 구체적으로 설명해야합니다. 백 스페이스 비활성화라고 할 때 백 스페이스가 백 브라우저 버튼을 모방 할 수 없도록 설정하는 것을 의미합니다. IE에서 포커스가 텍스트 입력 필드에 없을 때 Backspace를 누르면 Back (이전 페이지로 이동)을 누르는 것과 같습니다.

Ctrl 키와 같습니다. 새 IE 창을 만드는 링크가있는 페이지가 있습니다. 팝업 차단기가 켜져 있습니다. 차단하고 있습니다. 그러나 Ctrl 키를 누른 상태에서 새 창이 열립니다.

이것은 현재 웹 기반 응용 프로그램 인 키오스크 응용 프로그램 용입니다. 고객은 사이트 키오스크를 사용하기 쉽도록 현재 자금을 가지고 있지 않습니다. URL 필터링 및 URL 입력 필드 비활성화는 이미 완료되었습니다.

감사합니다.

답변

0

어떤 목적으로이 것이 필요합니까? 백 스페이스를 비활성화하면 URL이나 전자 메일 등을 입력 할 때 지옥이 될 수 있습니다.

문제를 더 잘 파악하면 다른 해결 방법을 권장 할 수 있습니다.

EDIT 1 :
이 웹 사이트에는 완료 방법에 대한 정보가있는 것 같습니다. 나는 현재를 확인할 수없는,하지만 난 그것으로 살펴 보겠습니다 : http://www.ozzu.com/programming-forum/disable-key-and-back-t44867.html

편집 2 : http://www.advscheduler.com/docs/manual/type_sendkeys.html 백 스페이스가 08

EDIT 3 것 같다 :이 웹 사이트는 일부 키 코드를 가지고
:
차단을 위해 좀 더 코드를 발견,이 체크 아웃 :

 

<script type="text/javascript">var sType = "keypress";</script> 

<!--[if IE]> 
<script type="text/javascript">sType = "keydown";</script> 
<![endif]--> 

<script type="text/javascript"> 
fIntercept = function(e) { 
    // alert(e.keyCode); 
    e = e || event.e; 
    if (e.keyCode == 116) { 
    // When F5 is pressed 
    fCancel(e); 
    } else if (e.ctrlKey && (e.keyCode == 0 || e.keyCode == 82)) { 
    // When ctrl is pressed with R 
    fCancel(e); 
    } 
}; 

fCancel = function(e) { 
    if (e.preventDefault) { 
    e.stopPropagation(); 
    e.preventDefault(); 
    } else { 
    e.keyCode = 0; 
    e.returnValue = false; 
    e.cancelBubble = true; 
    } 
    return false; 
}; 

fAddEvent = function(obj, type, fn) { 
    if (obj.addEventListener) { 
    obj.addEventListener(type, fn, false); 
    } else { 
    obj['e'+type+fn] = fn; 
    obj[type+fn] = function() { 
    obj['e'+type+fn](window.event); 
    } 
    obj.attachEvent('on'+type, obj[type+fn]); 
    } 
}; 


fAddEvent(document, sType, fIntercept); 
</script> 

이 좋아, 이제 당신이 그것을 할 필요가 있어야한다. 백 스페이스를 비활성화하려면 키 코드는 08입니다. 약간의 수정만으로 게시 한 코드를 사용할 수도 있습니다. \

당신이 필요로하는 것이 있는지보십시오. (자바 스크립트 사용법을 알고 싶습니다.)

0

웹 페이지에서는 실행할 수 없습니다. 웹 브라우저의 주요 목적 중 하나는 인터넷에서 사용자를 보호하는 것입니다. 웹 사이트에서 수행 할 수있는 매우 구체적인 일련의 작업을 정의하고 버튼을 비활성화하는 작업은 목록에 없습니다.

한편 네트워크 관리자로서 사용자를 혼란스럽게하려는 경우 일부 데스크톱 소프트웨어를 통해 수행 할 수 있습니다. 그러나 나는 숨을 멈추지 않을 것이다.

+0

에게 도움이되기를 바랍니다 @ Salim은 웹 페이지에서이 작업을 수행 할 방법을 찾고 있습니다. – pkaeding

+0

Nevermind.묻는 사람의 설명을 읽은 후에, 나는 그것이 웹 응용 프로그램을위한 것이라고 생각한다. – pkaeding

0

내가이 jQuery를 솔루션을 사용하고 있습니다 (IE6와 파이어 폭스 3.6에서 테스트) :

 
$(document).keydown(function(e) { 
    var tag = e.target.tagName; 
    var ro = e.target.readOnly; 
    var type = e.target.type; 
    var tags = { 
     INPUT : '', 
     TEXTAREA : '' 
    }; 
    if (e.keyCode == 8) {// backspace 
     if (!(tag in tags && !ro && /text/.test(type))) { 
      e.stopPropagation(); 
      e.preventDefault(); 
     } 
    } 
});  

나는 생각하지 않는다, 문제는 '레지스트리 해킹'을 언급하기 때문에 누군가