js系统屏蔽按键

// 系统按键触发事件
document.onkeydown = function(){ 
 // Ctrl+N、Shift+F十、F十一、F5刷新
  if   ((event.altKey)&&    
              ((event.keyCode==37)||       // 屏蔽 Alt+ 方向键 ←
                (event.keyCode==39)))       // 屏蔽 Alt+ 方向键 →
      {                      
            event.returnValue=false;    
      }    debug

   if(((event.keyCode == 8) &&                                                    //BackSpace   
        ((event.srcElement.type != "text" && event.srcElement.type != "textarea" && event.srcElement.type != "password")
           || event.srcElement.readOnly == true))){
            event.keyCode=0;    
            event.returnValue=false;  
      }
          
      if   (  (event.keyCode==116)||                                   // 屏蔽F5刷新键
              (event.ctrlKey&&event.keyCode==82)){// Ctrl + R
            event.keyCode=0;    
            event.returnValue=false;    
            }    
      if   (event.keyCode==122){event.keyCode=0;event.returnValue=false;}     // 屏蔽F11
      if   (event.ctrlKey&&event.keyCode==78)event.returnValue=false;       // 屏蔽Ctrl+n
      if   (event.shiftKey&&event.keyCode==121)event.returnValue=false;     // 屏蔽shift+F10
      if   (event.srcElement.tagName   ==   "A"   &&   event.shiftKey)      
              event.returnValue = false;                           // 屏蔽shift加鼠标左键新开一网页
} 调试

 

//F12$(function() {
       // 调试模式下不屏蔽相关快捷键
       var f12 = false;
       if (!CD.debug) {
           $(document).keydown(function(event) {
            var e = window.event || e;
            if (e.keyCode === 8) {
                var d = e.srcElement || e.target;
                if ((d.tagName.toUpperCase() === 'INPUT' && (d.type.toUpperCase() === 'TEXT' || d.type.toUpperCase() === 'PASSWORD' || d.type.toUpperCase() === 'FILE'))
                     || d.tagName.toUpperCase() === 'TEXTAREA') {
                    doPrevent = d.readOnly || d.disabled;
                }
                else {
                  e.keyCode=0;
                  return false;
                }
            } else if (e.keyCode===123) {
             if (f12) {
              f12 = !f12;
             } else {
              e.keyCode=0;
                 return false;
             }
            } else if (
                (e.keyCode>=112 && e.keyCode<=122) ||
                ((e.ctrlKey) && (e.keyCode===82)) ||
                ((e.ctrlKey) && (e.keyCode===78)) ||
                ((e.shiftKey) && (e.keyCode===121)) ||
                ((e.altKey) && (e.keyCode===115)) ||
                ((e.shiftKey) && (e.srcElement.tagName==="A"))
                ) {
              e.keyCode=0;
              return false;
            } else if (((e.altKey) && (e.keyCode===37)) ||
                    ((e.altKey) && (e.keyCode===39)) ) {
             event.returnValue = false;
             return false;
            } else if ((e.altKey) && (e.ctrlKey) && (e.shiftKey) && (e.keyCode===80)){
             f12 = true;
             e.keyCode = 123;
             return true;
            }
           });
           $(document).bind("contextmenu", function() {
              return false;
           });
       }
});  事件