我需要在Internet Explorer 6中禁用特定密钥(Ctrl和Backspace)。是否存在执行此操作的注册表黑客攻击。它必须是IE6。感谢。
长编辑:
@apandit:哎呀。我需要更具体地讨论退格的事情。当我说禁用退格键时,我的意思是禁用Backspace模仿Back浏览器按钮的功能。在IE中,当焦点不在文本输入字段中时按Backspace相当于按Back(浏览到上一页)。
至于Ctrl键。有些页面具有创建新IE窗口的链接。我打开了弹出窗口阻止程序,阻止了这个。但是,在正在启动的新窗口中按Ctrl键单击结果。
这适用于kiosk应用程序,该应用程序目前是基于Web的应用程序。客户目前没有资金使他们的网站亭友好。 URL过滤和禁用URL输入字段等内容已经完成。
感谢。
答案 0 :(得分:0)
你出于什么目的需要这个?因为禁用退格键会输入网址或电子邮件等等。
如果我们更好地了解问题,我们可以推荐其他解决方法。
编辑1:
这个网站似乎有一些关于它是如何完成的信息。我目前无法验证它,但我会调查一下:
http://www.ozzu.com/programming-forum/disable-key-and-back-t44867.html
编辑2:
本网站有一些关键代码:
http://www.advscheduler.com/docs/manual/type_sendkeys.html
似乎BACKSPACE是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。)
答案 1 :(得分:0)
您无法从网页上执行此操作。 Web浏览器的主要目的之一是保护用户免受Internet的侵害。它们定义了一组非常具体的网站可以做的事情,禁用按钮不在列表中。
另一方面,如果您是网络管理员并且只想弄乱用户,您可以通过某些桌面软件来实现。但我不会屏住呼吸。
答案 2 :(得分:0)
我正在使用这个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(); } } });
希望它可以帮助某人