Javascript 如何使用mootools防止默认操作 新文件 函数onkeydown(e){ 警惕(e.key); e、 keyCode=0; e、 停止(); 返回false; } Event.Keys.F3=114; addEvent('domready',function(){ 文件.addEvent(“keydown”,此为.onkeydown); }) ;

Javascript 如何使用mootools防止默认操作 新文件 函数onkeydown(e){ 警惕(e.key); e、 keyCode=0; e、 停止(); 返回false; } Event.Keys.F3=114; addEvent('domready',function(){ 文件.addEvent(“keydown”,此为.onkeydown); }) ;,javascript,mootools,mootools-events,Javascript,Mootools,Mootools Events,在IE8中打开时,按F3,搜索操作开始。为什么我不能停止它?因为这是浏览器的默认操作,几乎没有一个好的借口来覆盖预期的行为 有关在IE中禁用ALT-Enter的最新讨论,请参阅。Internet Explorer,以及大多数其他浏览器,从JavaScript锁定F键的使用。由于明显的原因,禁止重新绑定这些钥匙;想象一下,如果我们允许F5键重新绑定,会有多混乱 技术上的答案是,keydown和keyup事件在应用程序到达JS层之前被拦截。正如您可以在事件中返回true或false以防止传播一样,应

在IE8中打开时,按F3,搜索操作开始。为什么我不能停止它?

因为这是浏览器的默认操作,几乎没有一个好的借口来覆盖预期的行为


有关在IE中禁用ALT-Enter的最新讨论,请参阅。

Internet Explorer,以及大多数其他浏览器,从JavaScript锁定F键的使用。由于明显的原因,禁止重新绑定这些钥匙;想象一下,如果我们允许F5键重新绑定,会有多混乱

技术上的答案是,keydown和keyup事件在应用程序到达JS层之前被拦截。正如您可以在事件中返回true或false以防止传播一样,应用程序停止将keydown和keyup事件传播到其受信任域之外的脚本接口,例如,您只能在浏览器加载项和工具栏中覆盖F3键,而不能在网页中覆盖F3键

简而言之:尝试重新绑定另一个键,F键不容易跨浏览器重新绑定

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <TITLE> New Document </TITLE>
    <script language="JavaScript" src="mootools-1.2.3-core-nc.js"></script>
    <script language="JavaScript" src="mootools-1.2.3.1-more-nc.js"></script>
 </HEAD>
 <BODY id='body'>
 </BODY>
  <Script> 
  function onkeydown(e){
            alert(e.key);
            e.keyCode=0;   
                    e.stop();
            return   false;   

    }
  Event.Keys.F3 = 114;
  window.addEvent('domready', function() {
                    document.addEvent("keydown", this.onkeydown);
                                                                 }) ;
                </script>
</HTML>