2010-11-21 108 views
1

我有5个环节在我的主页,快捷键打开网页

linkabc LINKDEF linkghi linkjkl linkmno

当我点击了CTRL + B打开linkabc页面,

当我点击CTRL + E打开像明智的LINKDEF页面,

如何以较少的snnipet做这个功能,

回答

1

没有Javascript需要。

<a accesskey="b" href="#">linka<u>b</u>c</a> 
<a accesskey="e" href="#">linkd<u>e</u>f</a> 

您可以通过按Alt-b,第二通过Alt-e访问的第一个链接。

你需要绑定到的onkeydown事件,然后检索键码:

+0

我觉得他说,他希望控制-b和控制-E ..不ALT ... – 2010-11-21 06:11:18

1

JavaScript的方式的香草。 在此处获取键码:http://www.cambiaresearch.com/c4/702b8cd1-e5b0-42e6-83ac-25f0306e3e25/Javascript-Char-Codes-Key-Codes.aspx

对于修饰键,您需要维护变量以检查它们是否被抑制。例如,如果在onydydown上检测到控制的键码,则切换var control = true。 Onkeyup,你会切换回:var control = false。要触发的动作,你会做:

if (control && e.keycode == 66) { // 66 happens to be "b" 
    performAction(); 
} 

这是如果您使用的是库要容易得多,不过,因为有针对的按键组合,比如这一个jQuery的所有主要的JavaScript库的插件: http://plugins.jquery.com/project/hotkeys

0

This post有一个小小的Javascript库,可以让你绑定键盘快捷键。可能会试着查看。他在该页面上有一个小演示,它似乎工作得很好。

0

您可以使用HTML锚标记的accesskey属性如下做到这一点,但你会按ALT代替CTRL: -

<a accesskey="b" href="linkabc.html">linka<u>b</u>c</a> 
<a accesskey="e" href="linkdef.html">linkd<u>e</u>f</a> 

我希望这可以帮助你,你可以检查此网址了解更多信息: -

http://en.wikipedia.org/wiki/Access_key

+0

这一个不工作\t \t \t \t More Action,当我点击ALT + m时,什么都没发生 – Bharanikumar 2010-11-21 10:58:10

+0

我想,它的工作, – Bharanikumar 2010-11-21 10:59:07