문제
Internet Explorer 6에서 특정 키(Ctrl 및 Backspace)를 비활성화해야 합니다.이를 수행하는 레지스트리 해킹이 있습니까?IE6이어야 합니다.감사해요.
긴 편집:
@apandit:앗.백스페이스에 대해 좀 더 구체적으로 설명할 필요가 있습니다.백스페이스 비활성화는 백스페이스가 뒤로 브라우저 버튼을 모방하는 기능을 비활성화한다는 의미입니다.IE에서 초점이 텍스트 입력 필드에 없을 때 백스페이스를 누르는 것은 뒤로(이전 페이지 탐색)를 누르는 것과 같습니다.
Ctrl 키의 경우.새로운 IE 창을 생성하는 링크가 있는 일부 페이지가 있습니다.팝업 차단기를 켜서 이를 차단하고 있습니다.그러나 Ctrl을 클릭하면 새 창이 시작됩니다.
이는 현재 웹 기반 애플리케이션인 키오스크 애플리케이션용입니다.고객은 현재 사이트를 키오스크 친화적으로 만들 자금이 없습니다.URL 필터링 및 URL 입력 필드 비활성화와 같은 작업은 이미 완료되었습니다.
감사해요.
해결책
어떤 목적으로 이것이 필요합니까?백스페이스를 비활성화하면 URL이나 이메일 등을 입력하는 것이 지옥이 되기 때문입니다.
문제를 더 잘 안다면 다른 해결 방법을 권장할 수 있습니다.
편집 1:
이 웹사이트에는 이 작업이 수행된 방법에 대한 정보가 있는 것 같습니다.현재는 확인할 수 없지만 조사해 보겠습니다.http://www.ozzu.com/programming-forum/disable-key-and-back-t44867.html
편집 2:
이 웹사이트에는 몇 가지 키 코드가 있습니다:http://www.advscheduler.com/docs/manual/type_sendkeys.htmlBACKSPACE는 08인 것 같습니다.
편집 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입니다.제가 게시한 코드를 약간만 수정하여 사용해도 될 것입니다...:\
그것을 시험해보고 그것이 당신에게 필요한 것인지 확인하십시오.(Javascript 사용법을 아셨으면 좋겠습니다.)
다른 팁
웹페이지에서는 할 수 없습니다.웹 브라우저의 주요 목적 중 하나는 인터넷으로부터 사용자를 보호하는 것입니다.이는 웹사이트에서 수행할 수 있는 매우 구체적인 작업 집합을 정의하며, 비활성화 버튼은 목록에 없습니다.
반면에, 당신이 네트워크 관리자이고 사용자를 혼란스럽게 만들고 싶다면 일부 데스크톱 소프트웨어를 통해 이를 수행할 수 있습니다.그러나 나는 숨을 참지 않을 것입니다.
저는 이 jQuery 솔루션을 사용하고 있습니다(ie6 및 firefox 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(); } } });
누군가에게 도움이 되길 바랍니다