模拟Google键盘快捷键

时间:2009-06-15 17:57:52

标签: javascript javascript-events

我真的很好奇Google(以及现在Facebook在照片库中)如何实现快捷键,例如 J / K / 箭头。我担心我没有太多的细节,因为我无法通过检查来源确定那些按钮“tic”,可以这么说。我特别想要的是一种将按钮绑定到Javascript函数的方法 - 从那里,它显然相当容易。

2 个答案:

答案 0 :(得分:7)

最基本的,你只需注册一个keydown事件处理程序(如果你想让它成为页面的全局,就在文档对象上),然后查看事件对象以查看按下了哪个键。

由于不同的浏览器以不同的方式处理事件(我正在查看Internet Explorer),我通常使用抽象层(如YUI或jQuery)来规范化差异。

YUI与example of implementing keyboard control一样jQuery(尽管此示例不附加到文档对象)。

如果您想知道哪些密钥代码与哪些密钥相关,那么我发现使用Firebug最简单。

在控制台中运行以下代码:

document.onkeydown = function (ev) { console.log(ev); }

...然后点击页面并按键。打印到控制台的对象将告诉您刚刚触发的键码。

答案 1 :(得分:1)

我建议使用js-hotkeysjQuery插件)。

我之前在生产环境中使用过此插件,因此我在实施之前在所有a级浏览器中对其进行了测试..这是大约三个月前。