2012-01-26 9 views
4

ブラウザのデフォルトヘルプ機能を無効にするか、上書きしたいと考えています。ブラウザのデフォルトヘルプ機能を無効にする方法

私はいくつかの例をオンラインで見ようとしましたが、私のために働いていません。 (次のコードは、オペラ&すなわち上で、FFとクロームに取り組んでいないが)

<html> 
<title> 
</title> 
<body> 
    <script src = "jquery-1.7.1.min.js" text="type="text/javascript""></script> 
    <script language="javascript" type="text/javascript">   
      document.onkeydown = function(event) 
      { 
       if(window.event && window.event.keyCode == 112) 
       { 
        event.stopPropagation(); 
        event.preventDefault(); 
        event.keyCode = 0; 
        return false; 
        //document.onhelp = new Function("return false;"); 
        //window.onhelp = new Function("return false;"); 
        //helpFunction(); 

       } 
       else if(event.which == 112) 
       { 
        helpFunction(); 
       } 
      }; 
      var false_function = new function(){"return false";}; 
      shortcut.add("f1",false_function); 
     var helpFunction = function() { 
      alert('help'); 
     } 
    </script> 
    <h2>Test</h2> 
</body> 

+0

どのようにこの情報をブラウザに追加しますか? – erjoalgo

答えて

10

私はhereこのIEの各バージョンで動作するようにclamiedれたコードとFF

を見つけました
<script type="text/javascript"> 

function avoidInvalidKeyStorkes(evtArg) { 
    var evt = (document.all ? window.event : evtArg); 
    var isIE = (document.all ? true : false); 
    var KEYCODE = (document.all ? window.event.keyCode : evtArg.which); 

    var element = (document.all ? window.event.srcElement : evtArg.target); 
    var msg = "We have disabled this key: " + KEYCODE; 

    if (KEYCODE == "112") { 
     if (isIE) { 
      document.onhelp = function() { 
       return (false); 
      }; 
      window.onhelp = function() { 
       return (false); 
      }; 
     } 
     evt.returnValue = false; 
     evt.keyCode = 0; 
     window.status = msg; 
     evt.preventDefault(); 
     evt.stopPropagation(); 
     alert(msg); 
    } 

    window.status = "Done";  
}  

if (window.document.addEventListener) { 
    window.document.addEventListener("keydown", avoidInvalidKeyStorkes, false); 
} else { 
    window.document.attachEvent("onkeydown", avoidInvalidKeyStorkes); 
    document.captureEvents(Event.KEYDOWN); 
} 

</script> 

作業JSFiddle結果タブをクリックした後でテストする必要があることに注意してください。

関連する問題