禁用IE 6中的特定键
我需要禁用Internet Explorer 6中的特定键(Ctrl和Backspace)。是否存在注册表hack来做到这一点。它必须是IE6. 谢谢。
长编辑:
@apandit:哎呀。我需要更具体地介绍一下退格键。当我说"禁用退格键"时,是指禁用"退格键"模仿"后退浏览器"按钮的功能。在IE中,当焦点不在文本输入字段中时按Backspace等效于按Back(浏览上一页)。
至于Ctrl键。有些页面包含创建新IE窗口的链接。我打开了弹出窗口阻止程序,将其阻止了。但是,按住Ctrl键单击会导致启动新窗口。
这是针对信息亭应用程序的,目前是基于Web的应用程序。客户目前没有资金来使他们的站点信息亭变得友好。 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.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。)
回答
我们无法从网页上执行此操作。 Web浏览器的主要目的之一是保护用户免受Internet的侵害。它们定义了网站可以执行的一组非常特定的操作,并且禁用按钮不在列表中。
另一方面,如果我们是网络管理员,并且只想打扰用户,则可以通过某些桌面软件来做到这一点。但是我不会屏住呼吸。