惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Microsoft Azure Blog
Microsoft Azure Blog
WordPress大学
WordPress大学
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
The Cloudflare Blog
U
Unit 42
D
Docker
Hugging Face - Blog
Hugging Face - Blog
博客园 - 聂微东
Recent Announcements
Recent Announcements
GbyAI
GbyAI
T
The Blog of Author Tim Ferriss
Last Week in AI
Last Week in AI
V
Visual Studio Blog
I
InfoQ
Google DeepMind News
Google DeepMind News
小众软件
小众软件
L
LangChain Blog
C
Check Point Blog
宝玉的分享
宝玉的分享
Martin Fowler
Martin Fowler
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 【当耐特】
J
Java Code Geeks
罗磊的独立博客

博客园 - 无名

sql2005分页SQL 数据库设计原则 sql2005排名函数 如何提高数据库性能,减少数据库服务器压力瓶颈一两个小方法 sql Server 索引优化 Using DeepLoad In NetTiers 看nettiers整理出来的codesmith模板编写要点 - 无名 - 博客园 .Net WinForm学习笔记 各分数段人数统计 排名问题 DataGrid - 导出Excel文件 DataGrid导出excel和word的例子 DataGrid - 导出Excel文件 利用剪切板将DataSet的数据导出到Excel DataGrid相关知识总结(收集自各位老大处) 使用DES加密解密代码(C# & vb.Net),好东东,拷得,贴一下 dataGrid的手写样式 在DNN中获取所有模块信息 几个DNN里的技巧(转)(真的是好东东啊)
在javascript中,怎样响应键盘事件(转 - 无名 - 博客园
无名 · 2006-06-26 · via 博客园 - 无名

在javascript中,怎样响应键盘事件

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<noscript><meta http-equiv="refresh" content="0;url=about:noscript">
</noscript><title>屏蔽鼠标右键、Ctrl+N、Shift+F10、F5刷新、退格键</title>
</head>
<body onkeydown="KeyDown()"
oncontextmenu="event.returnValue=false">

<script language="Javascript"><!--
  //屏蔽鼠标右键、Ctrl+N、Shift+F10、F5刷新、退格键
  //Author: meizz(梅花雨) 2002-6-18

function KeyDown(){ 
  if ((window.event.altKey)&&
      ((window.event.keyCode==37)||   //屏蔽 Alt+ 方向键 ←
       (window.event.keyCode==39))){  //屏蔽 Alt+ 方向键 →
     alert("不准你使用ALT+方向键前进或后退网页!");
     event.returnValue=false;
     }

     /* 注:这还不是真正地屏蔽 Alt+ 方向键,
     因为 Alt+ 方向键弹出警告框时,按住 Alt 键不放,
     用鼠标点掉警告框,这种屏蔽方法就失效了。以后若
     有哪位高手有真正屏蔽 Alt 键的方法,请告知。*/

  if ((event.keyCode==8)  ||                 //屏蔽退格删除键
      (event.keyCode==116)||                 //屏蔽 F5 刷新键
      (event.ctrlKey && event.keyCode==82)){ //Ctrl + R
     event.keyCode=0;
     event.returnValue=false;
     }
  if ((event.ctrlKey)&&(event.keyCode==78))   //屏蔽 Ctrl+n
     event.returnValue=false;
  if ((event.shiftKey)&&(event.keyCode==121)) //屏蔽 shift+F10
     event.returnValue=false;
  if (window.event.srcElement.tagName == "A" && window.event.shiftKey)
      window.event.returnValue = false;  //屏蔽 shift 加鼠标左键新开一网页
  if ((window.event.altKey)&&(window.event.keyCode==115)){ //屏蔽Alt+F4
      window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px");
      return false;}
  }
/* 另外可以用 window.open 的方法屏蔽 IE 的所有菜单
第一种方法:
  window.open("你的.htm", "","toolbar=no,location=no,directories=no,menubar=no,scrollbars=no,resizable=yes,status=no,top=0,left=0")
第二种方法是打开一个全屏的页面:
  window.open("你的.asp.html", "", "fullscreen=yes")
*/
// --></script>
<h2 align=center>屏蔽鼠标右键、Ctrl+n、shift+F10、F5刷新、退格键</h2>
</body>
</html>

判断event对象的属性:

altKey
ctrlKey
shiftKey
这三个是boolean型,按下时为true

keyCode  设置或获取与导致事件的按键关联的 Unicode 按键代码。