`
qingfeng_lxc
  • 浏览: 31880 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

javascript设置网页快捷键

阅读更多

很多网页中,可以使用快捷来完成一定的动作,比如discuz论坛的“完成后可按 Ctrl+Enter 发布”功能!

  这样的功能是用JavaScript中的event属性的KeyCode方法完成,利用onKeyDown事件进行驱动。
  在JavaScript中,可以通过keyCode属性来得到用户所按键的ASSCII码值。具体对应关系可以查ASSCII码表。
示例:

<SCRIPT LANGUAGE="JavaScript">
<!--
function hotkey()
{
var a=window.event.keyCode;
if(a==65)
{
alert("你按了a键吧");
}
}// end hotkey

document.onkeydown = hotkey; //当onkeydown 事件发生时调用hotkey函数
//-->
</SCRIPT>
另外,在快捷键的使用中,Alt、Ctrl、shift等辅助键也是经常用到的,可以通过altKey、ctrlKey、shiftKey这三个属性来判断Alt、Ctrl、shift键的状态
比如event.ctrlKey的值为真,就说明用户按下了Ctrl键。
示例:

<SCRIPT LANGUAGE="JavaScript">
<!--
function hotkey()
{

if(event.ctrlKey)
{
alert("你按了Ctrl键吧");
}
}// end hotkey

document.onkeydown = hotkey; //当onkeydown 事件发生时调用hotkey函数
//-->
</SCRIPT>
可以组合起来,形成真正的快捷键,将执行语句换为你要的效果就可以了。

<SCRIPT LANGUAGE="JavaScript">
<!--
function hotkey()
{
var a=window.event.keyCode;
if((a==65)&&(event.ctrlKey))
{
alert("你按了ctrl+a键吧");
}
}// end hotkey

document.onkeydown = hotkey; //当onkeydown 事件发生时调用hotkey函数
//-->
</SCRIPT>
document.onkeydown = hotkey 语句是在全页面中,当用户按下键时,调用hotkey函数,也许你希望在页面局部实现快捷键功能,那么,你可以仿照下面这样做(记得删除"document.onkeydown = hotkey"语句):

<textarea rows="7" cols="90" name="message" onKeyDown="javascript: hotkey();" tabindex="2"></textarea>

  这样,只有当光标焦点在文本框中才能使用快捷键。

屏蔽Alt+F4等快捷键:
<script>
function KeyDown(){ //屏蔽鼠标右键、Ctrl+n、shift+F10、F5刷新、退格键
//alert("ASCII代码是:"+event.keyCode);
if ((window.event.altKey)&&
((window.event.keyCode==37)|| //屏蔽 Alt+ 方向键 ←
(window.event.keyCode==39))){ //屏蔽 Alt+ 方向键 →
alert("不准你使用ALT+方向键前进或后退网页!");
event.returnValue=false;
}
if ((event.keyCode==8) || //屏蔽退格删除键
(event.keyCode==116)|| //屏蔽 F5 刷新键
(event.keyCode==112)|| //屏蔽 F1 刷新键
(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;}
}
function Showhelp(){
alert("Wrong!");
return false;
}
</script>
==============================================================
==============================================================
IE Javascript快捷键操作
1. oncontextmenu="window.event.returnValue=false" 将彻底屏蔽鼠标右键
<table border oncontextmenu=return(false)><td>no</table> 可用于Table
2. <body onselectstart="return false"> 取消选取、防止复制
3. onpaste="return false" 不准粘贴
4. oncopy="return false;" oncut="return false;" 防止复制
5. <link rel="Shortcut Icon" href=../../../../"favicon.ico"> IE地址栏前换成自己的图标
6. <link rel="Bookmark" href=../../../../"favicon.ico"> 可以在收藏夹中显示出你的图标
7. <input style="ime-mode:disabled"> 关闭输入法
8. 永远都会带着框架
<script language="javascript"><!--
if (window == top)top.location.href = "frames.htm"; //frames.htm为框架网页
// --></script>
9. 防止被人frame
<SCRIPT LANGUAGE=javascript><!--
if (top.location != self.location)top.location=self.location;
// --></SCRIPT>
10. <noscript><iframe src=../../*.HTML></iframe></noscript> 网页将不能被另存为
11. <input type=button value=查看网页源代码
onclick="window.location = 'view-source:'+ 'http://www.csdn.net/'">
12. 怎样通过ASP的手段来检查来访者是否用了代理
<% if Request.ServerVariables("HTTP_X_FORWARDED_FOR")<>"" then
response.write "<font color=#FF0000>您通过了代理服务器,"& _
"真实的IP为"&Request.ServerVariables("HTTP_X_FORWARDED_FOR")
end if
%>
13. 取得控件的绝对位置
//javascript
<script language="javascript">
function getIE(e){
var t=e.offsetTop;
var l=e.offsetLeft;
while(e=e.offsetParent){
t+=e.offsetTop;
l+=e.offsetLeft;
}
alert("top="+t+"\nleft="+l);
}
</script>
//VBScript
<script language="VBScript"><!--
function getIE()
dim t,l,a,b
set a=document.all.img1
t=document.all.img1.offsetTop
l=document.all.img1.offsetLeft
while a.tagName<>"BODY"
set a = a.offsetParent
t=t+a.offsetTop
l=l+a.offsetLeft
wend
msgbox "top="&t&chr(13)&"left="&l,64,"得到控件的位置"
end function
--></script>
14. 光标是停在文本框文字的最后
<script language="javascript">
function cc()
{
var e = event.srcElement;
var r =e.createTextRange();
r.moveStart('character',e.value.length);
r.collapse(true);
r.select();
}
</script>
<input type=text name=text1 value="123" onfocus="cc()">

15. 判断上一页的来源
ASP:
request.servervariables("HTTP_REFERER")
javascript:
document.referrer
16. 最小化、最大化、关闭窗口
<object id=hh1 classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">
<param name="Command" value="Minimize"></object>
<object id=hh2 classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">
<param name="Command" value="Maximize"></object>
<OBJECT id=hh3 classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">
<PARAM NAME="Command" VALUE="Close"></OBJECT>
<input type=button value=最小化 onclick=hh1.Click()>
<input type=button value=最大化 onclick=hh2.Click()>
<input type=button value=关闭 onclick=hh3.Click()>
本例适用于IE
17.
<%
'定义数据库连接的一些常量
Const adOpenForwardOnly = 0 '游标只向前浏览记录,不支持分页、Recordset、BookMark
Const adOpenKeyset = 1 '键集游标,其他用户对记录说做的修改将反映到记录集中,但其他用户增加或删除记录不会反映到记录集中。支持分页、Recordset、BookMark
Const adOpenDynamic = 2 '动态游标功能最强,但耗资源也最多。用户对记录说做的修改,增加或删除记录都将反映到记录集中。支持全功能浏览(ACCESS不支持)。
Const adOpenStatic = 3 '静态游标,只是数据的一个快照,用户对记录说做的修改,增加或删除记录都不会反映到记录集中。支持向前或向后移动
Const adLockReadOnly = 1 '锁定类型,默认的,只读,不能作任何修改
Const adLockPessimistic = 2 '当编辑时立即锁定记录,最安全的方式
Const adLockOptimistic = 3 '只有在调用Update方法时才锁定记录集,而在此前的其他操作仍可对当前记录进行更改、插入和删除等
Const adLockBatchOptimistic = 4 '当编辑时记录不会被锁定,而更改、插入和删除是在批处理方式下完成的
Const adCmdText = &H0001
Const adCmdTable = &H0002
%>
18. 网页不会被缓存
HTM网页
<META HTTP-EQUIV="pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
<META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT">
或者<META HTTP-EQUIV="expires" CONTENT="0">
ASP网页
Response.Expires = -1
Response.ExpiresAbsolute = Now() - 1
Response.cachecontrol = "no-cache"
PHP网页
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
19. 检查一段字符串是否全由数字组成
<script language="javascript"><!--
function checkNum(str){return str.match(/\D/)==null}
alert(checkNum("1232142141"))
alert(checkNum("123214214a1"))
// --></script>
20. 获得一个窗口的大小
document.body.clientWidth,document.body.clientHeight
21. 怎么判断是否是字符
if (/[^\x00-\xff]/g.test(s)) alert("含有汉字");
else alert("全是字符");
22.TEXTAREA自适应文字行数的多少
<textarea rows=1 name=s1 cols=27 onpropertychange="this.style.posHeight=this.scrollHeight">
</textarea>
23. 日期减去天数等于第二个日期
<script language=javascript>
function cc(dd,dadd)
{
//可以加上错误处理
var a = new Date(dd)
a = a.valueOf()
a = a - dadd * 24 * 60 * 60 * 1000
a = new Date(a)
alert(a.getFullYear() + "年" + (a.getMonth() + 1) + "月" + a.getDate() + "日")
}
cc("12/23/2002",2)
</script>
24. 选择了哪一个Radio
<HTML><script language="vbscript">
function checkme()
for each ob in radio1
if ob.checked then window.alert ob.value
next
end function
</script><BODY>
<INPUT name="radio1" type="radio" value="style" checked>Style
<INPUT name="radio1" type="radio" value="barcode">Barcode
<INPUT type="button" value="check" onclick="checkme()">
</BODY></HTML>
25.获得本页url的request.servervariables("")集合
Response.Write "<TABLE border=1><!-- Table Header --><TR><TD><B>Variables</B></TD><TD><B>value</B></TD></TR>"
for each ob in Request.ServerVariables
Response.Write "<TR><TD>"&ob&"</TD><TD>"&Request.ServerVariables(ob)&"</TD></TR>"
next
Response.Write "</TABLE>"
26.
本机ip<%=request.servervariables("remote_addr")%>
服务器名<%=Request.ServerVariables("SERVER_NAME")%>
服务器IP<%=Request.ServerVariables("LOCAL_ADDR")%>
服务器端口<%=Request.ServerVariables("SERVER_PORT")%>
服务器时间<%=now%>
IIS版本<%=Request.ServerVariables"SERVER_SOFTWARE")%>
脚本超时时间<%=Server.ScriptTimeout%>
本文件路径<%=server.mappath(Request.ServerVariables("SCRIPT_NAME"))%>
服务器CPU数量<%=Request.ServerVariables("NUMBER_OF_PROCESSORS")%>
服务器解译引擎<%=ScriptEngine & "/"& ScriptEngineMajorVersion &"."&ScriptEngineMinorVersion&"."& ScriptEngineBuildVersion %>
服务器操作系统<%=Request.ServerVariables("OS")%>
27.ENTER键可以让光标移到下一个输入框
<input onkeydown="if(event.keyCode==13)event.keyCode=9">
28. 检测某个网站的链接速度:
把如下代码加入<body>区域中:
<script language=javascript>
tim=1
setInterval("tim++",100)
b=1
var autourl=new Array()
autourl[1]="www.njcatv.net"
autourl[2]="javacool.3322.net"
autourl[3]="www.sina.com.cn"
autourl[4]="www.nuaa.edu.cn"
autourl[5]="www.cctv.com"
function butt(){
document.write("<form name=autof>")
for(var i=1;i<autourl.length;i++)
document.write("<input type=text name=txt"+i+" size=10 value=测试中……> =》<input type=text name=url"+i+" size=40> =》<input type=button value=GO onclick=window.open(this.form.url"+i+".value)><br/>")
document.write("<input type=submit value=刷新></form>")
}
butt()
function auto(url){
document.forms[0]["url"+b].value=url
if(tim>200)
{document.forms[0]["txt"+b].value="链接超时"}
else
{document.forms[0]["txt"+b].value="时间"+tim/10+"秒"}
b++
}
function run(){for(var i=1;i<autourl.length;i++)document.write("<img src=http://"+autourl[i]+"/"+Math.random()+" width=1 height=1 onerror=auto('http://";+autourl[i]+"')>")}
run()</script>
29. 各种样式的光标
auto :标准光标
default :标准箭头
hand :手形光标
wait :等待光标
text :I形光标
vertical-text :水平I形光标
no-drop :不可拖动光标
not-allowed :无效光标
help :?帮助光标
all-scroll :三角方向标
move :移动标
crosshair :十字标
e-resize
n-resize
nw-resize
w-resize
s-resize
se-resize
sw-resize
 

分享到:
评论

相关推荐

    JavaScript+快捷键设置

    ### JavaScript与快捷键设置知识点详解 #### 一、概述 在网页开发中,为了提高用户体验以及增加网页的安全性,开发者常常会使用JavaScript来控制或监听用户的键盘操作,比如禁用某些快捷键的功能或者添加自定义...

    js设置快捷键

    同时,还可以为同一快捷键设置多个事件类型,如'keyup'、'keydown',以及'keypress'。 对于更复杂的场景,你可能需要解除已注册的快捷键。这可以通过`hotkeys.remove`方法实现: ```javascript var handler = ...

    js前端实现的组合快捷键demo(类似QQ截图快捷键等)

    用户可以在网页上设置多个快捷键组合,当按下这些组合时,会触发相应的事件或执行特定的操作。 能做到什么: 1. 提高交互性:通过组合快捷键,用户可以更快速地执行常用操作,提高了网页的交互性。 2. 简化操作流程...

    js快捷键设置

    JavaScript(简称JS)是一种轻量级的脚本语言,广泛应用于网页和网络应用开发,能够对用户交互、页面动态更新以及Ajax异步通信等进行处理。快捷键设置在编程过程中可以显著提高开发效率,帮助程序员快速执行常见的...

    asp.net 设置应用程序的快捷键

    如果你的应用需要支持多语言,可以将快捷键设置在资源文件中,这样可以根据用户的语言选择显示相应的快捷键提示。 5. **测试与优化**: 快捷键的可用性和用户体验是关键,需要充分测试不同场景下的快捷键行为,...

    javascript经典特效---快捷键提交按钮.rar

    JavaScript是一种广泛用于网页和网络应用的脚本语言,它主要负责处理客户端(浏览器端)的动态行为。通过JavaScript,开发者可以实现用户交互、数据验证、页面更新等功能,而无需服务器的介入。 在本例中,"快捷键...

    javascript onkeydown实现键盘快捷键控制页面.docx

    - **JavaScript 快捷键设置实现代码**:针对 Web 开发者,可以进一步探索如何在网页中设置更多复杂的快捷键功能。 #### 8. 总结 通过使用 `onkeydown` 事件,可以轻松地为网页添加键盘快捷键功能,极大地提升了...

    火狐浏览器快捷键

    当需要快速关闭当前浏览的网页时,`Shift+F4`是一个非常实用的快捷键。它比手动点击关闭按钮更加高效,尤其在处理多个标签页时,能够显著提高操作速度。 ### 6. Ctrl+U:查看页面源代码 `Ctrl+U`命令可以让用户...

    JavaScript精彩网页特效实例精粹

    同时,通过监听键盘事件,可以实现快捷键操作,增强网页的可访问性和效率。这部分内容对于提升网页的交互性和用户体验至关重要。 这些实例不仅提供了丰富的学习材料,同时也鼓励实践和创新。通过深入理解和应用这些...

    客户端快捷键管理类库(js)

    在网页应用中,通过JavaScript实现快捷键功能,可以让用户无需鼠标就能进行各种操作,从而提供更加流畅的交互体验。 这个"客户端快捷键管理类库"提供了一种结构化的方式来注册、管理和处理快捷键。它允许开发者定义...

    Js快捷键开源代码

    JavaScript(Js)是一种广泛用于网页和网络应用开发的脚本语言,它在浏览器环境中运行,为用户界面提供交互性。快捷键(Hotkeys)是提高用户界面效率的关键元素,允许用户通过键盘组合快速执行特定操作,而无需使用...

    如何禁用一些快捷键?怎么禁用快捷键?

    例如,在网页开发中,有时候我们需要禁用某些默认的快捷键行为,如Ctrl+N、Ctrl+R、Shift+F10等,以避免干扰用户的正常使用流程。本文将详细介绍如何通过JavaScript实现这一功能,并提供一个具体的代码示例。 #### ...

    Dreamweaver注释怎么设置快捷键?

    7. 设置完成后,点击“确定”(OK)按钮保存你的快捷键设置。 一旦设置完毕,当你在Dreamweaver中编写代码时,只需按下你设定的快捷键(如Ctrl + Alt + ,),就能快速插入HTML注释。同样的方法也可以用于设置CSS和...

    javascript写的网页小助手

    JavaScript编写的网页小助手是一个利用该编程语言特性实现的实用工具,主要针对网页交互和用户体验进行优化。在本文中,我们将深入探讨JavaScript的基础知识、网页助手的实现原理以及如何通过源码学习和改进这个项目...

    jquery快捷键插件mapkey

    5. **冲突处理**:插件内置冲突检测机制,当快捷键设置有冲突时,可以进行适当的处理,避免影响用户体验。 ### 三、使用步骤 1. **引入jQuery库**:首先确保页面已经引入了jQuery库,可以通过CDN或者本地文件引用...

    你不得不知道的ie11浏览器快捷键技巧.docx

    在日常的网页浏览中,IE11浏览器的快捷键技巧能极大地提高我们的工作效率,节省时间。下面我们将详细探讨这些快捷键的使用方法及其优势。 1. **常规快捷组合键**: - `Ctrl + T`:新建标签页,快速打开新的网页。 ...

    firefox 快捷键

    1. 关闭标签页:`command + W` 这个快捷键可以快速关闭当前活动的标签页,方便用户在多个网页之间切换。 2. 关闭窗口:`command + shift + W` 如果你想要关闭整个Firefox窗口,包括所有打开的标签页,这个组合键...

    Chrome快捷键

    在高效的网页浏览中,熟练掌握浏览器的快捷键可以显著提升工作效率。Google Chrome作为世界上最流行的浏览器之一,提供了丰富的快捷键功能,帮助用户快速执行各种操作。本篇文章将详细解读Chrome浏览器中的快捷键...

Global site tag (gtag.js) - Google Analytics