在一些交互性很强的应用中经常会需要在网页中增加快捷键的情况,比如GOOGLE READER,GMAIL,YAHOO MAIL中都有快捷键的应用。下面介绍一个比较简单又实用的javascript类:shortcut.js,链接中有很多使用示例。 下载地址:http://www./scripts/events/keyboard_shortcuts/shortcut.js 下面内容主要为官方文档的翻译,但也加入了一些我的理解。 使用说明该类主要有两个方法组成:shortcut.add()、shortcut.remove(),下面分别介绍: shortcut.add(key,func,options)该方法有三个参数: key :要设置的快捷键,比如”CTRL+A”,书写形式为 :功能键[+功能键..]+其他键。详情见下面支持键列表; func: 响应快捷键的函数,当快捷键按下时,将执行该函数; options: 配置参数,以关联数组形式填写,参数包括下面几个: type – String 事件类型 – 可以是’keydown’,'keyup’,'keypress’。默认为 ‘keydown’ disable_in_input – Boolean 是否在输入表单时屏蔽快捷键 – 如果该项设置为true,当光标焦点在input或textarea时,快捷键将屏蔽。这项功能是非常有用的,特别是当我们设置的快捷键只需按一个键时。该项默认为false target – DOM Node 响应快捷键的元素范围。默认为 : document propagate – Boolean 是否允许继承? 默认 : false keycode – Integer 监视的键盘编码。比如, 编码’65′ 为按键 ‘a’. options参数示例:
示例:
shortcut.remove()只有一个参数,即前面设置的的快捷键组合。确保跟前面设置的快捷键组合是一样的,比如我们前面shortcut.add()的第一个参数为“CTRL+A”,此处也必须为“CTRL+A”。 示例:
支持的键:快捷键必须是下面的形式: 功能键[+功能键..]+其他键 比如: Ctrl+A 支持的功能键有 功能键可以省略,比如设置快捷键X:
其他允许的键: 所有这些按键都是不区分大小写的,可以放心填写。 除shortcuts外,还有其他一些类似的库: jquery插件:jQuery Keyboard Hooker Plugin by Tzury Bar Yochay If you want an easier way to generate the string for the shortcut, take a look at Jonathan Tang’s Keycode.js. |
|
来自: xin0723 > 《About Jobs》