今天一大早就被头儿派了任务,让我整理一份可用快捷键操作的可行性方案。
不敢懈怠,遂出此文。

分析

对于WEB站点的多数操作也就是鼠标点点罢了,多数普通用户都是不愿意记那么多东西的,所以首先要考虑用户可接受性。

可以从以下几个方向考虑快捷键:

  1. 通用、易用、习惯,常用功能使用,可快速接受,习惯性按键
  2. 方便、快捷,有效提升操作效率
  3. 专用,针对特殊功能、特殊人群和特殊需求

计划

可用键

从语义化来讲,专门的键做专业的事。增加用户便利的前提下不能滥用一些系统和浏览器规划好的按键,如常用的复制和粘贴。
此类按键很多,这就导致可被我们利用的键很少。
最好的当然是设置1个键,不过在多数人习惯了office、QQ等软件后也习惯了一些快捷键操作。
所以可以从这些习惯中推导出一些可用键,2-3个组合键也未尝不可,还可以考虑双击。

单键:Esc,Enter,Tab,Delete,Home,方向键等。
组合键:Ctrl+*,Ctrl+alt+*

可入手项

  1. 全局或局部的Tab焦点切换,特别是表单;
  2. 任何搜索和提交的地方都应该绑定Enter键;
  3. 表单文本框点两下backspace全部删除;
  4. Esc取消输入焦点或取消操作;
  5. Home跳转个人中心或企业中心;
  6. Del删除选中的项;
  7. 主导航或重要栏目的访问键;
  8. 用户的自定义快捷键;
  9. 标签页切换;
  10. 一键注销登陆用户;
  11. 站内搜索;
  12. 一键返回顶部;
  13. 容我三思……

实现

在上述项都需要实施的前提下,整个实现必然是需要贯穿整站的。
会有全局的按键绑定,也会有针对性的某个功能或页面的实现。

最后我的想法如下:

  1. 添加全局Hook模块,捕获按键并执行对应的操作。
  2. 全局性的绑定可以写到全局js文件中,特殊情况特殊对待。