最近yahoo的邮箱推出了新的测试版,增加了不少很酷的功能,其中的快捷键定义就很方便
用户的使用,俺不知道yahoo究竟是用啥技术实践的,不过俺也知道两种挺简单的方法可以实现网页上的快捷键(如下)

1: 快速定位:可以直接在accesskey属性中设置,设置的快捷键为Alt+设置的key,也可以动态设置,代码如下
<a href="http://toyota2006.javaeye.com">toyota's博客</a><br>

注意:accesskey的优先级是最高点,可以屏蔽掉浏览器的快捷键。但是在没有这种的accesskey的网页上你按下alt+H是什么结果呢?可以看到的是“帮助”啊!自己站上的东西千万不要和IE等的工具冲突。这里列举一下默认&组合:
IE: A(favorites) D(address) E(edit) F(file) H(help) T(tools) V(view)
FireFox:B(bookmark) D(address) E(edit) F(file) G(goto) H(help) T(tools) V(view)

2: 事件处理,
例:按a键时转向到http://toyota2006.javaeye.com
<html>   
<head> 
<title> </title> 
<SCRIPT language="javascript"> 
var hotkey=97   //设置快捷键为a 
var destination="http://toyota2006.javaeye.com" 
if (document.layers) 
document.captureEvents(Event.KEYPRESS)  
function backhome(e){ 
if (document.layers){ 
if (e.which==hotkey) 
window.location=destination 
} 
else if (document.all){ 
if (event.keyCode==hotkey) 
window.location=destination 
}} 
document.onkeypress=backhome 
</SCRIPT>   
</head> 
 
<body onload="backhome()"> 
</body> 

</html>
评论
limingsky 2006-10-19
用accesskey属性,对于submit按纽倒是可以进行表单的提交!其他的一些普通的button,input只能获取焦点,<a>连接也只能获取焦点,还没有办法进行自动跳转!只能用js实现!
baizhan 2006-10-19
好主义...呵呵..有空也要试试..
Lucas Lee 2006-10-19
不错。不过在VB,Delphi等教程中,使用ALT的组合键应叫做加速键,而不是快捷键(一般使用CTL的组合键),虽然不错,也表明了HTML的二等公民地位...
toyota2006
搜索本博客
最近加入圈子
存档
最新评论