热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

[转]Accesskey引起的一点点思考

[转]Accesskey引起的一点点思考

Access key 是什么?~估计除了做 Web 开发的没多少人知道,Access key 是网页提供的快捷键。先回到软件界面,看下我的 Opera 的菜单,我的 Opera 是修改过的,中英文混在一起。

中文的作法一般都是在文字后面加个括号,里面的键值用下划线标出。而英文一般是把开头当成键值,如有重复的就推到第二第三,如果那个单词比较倒霉,所有字母都有跟别的有冲突又排在最后面的话,一般做法也不会像中文一样加括号标值。而是调整其他的来解决冲突,这年头,视觉第一!中文什么好办法,统一加括号。这是系统提示的热键(比较懒,没去查它叫什么名?),按下 alt+key 可直呼出,不知道有多少人使用鼠标去点多一些。

回到网页中,在网页里,一样有差不多功能的东东。大家叫它Access key,貌是最近流行滴样子。
标签添加属性accesskey,属性值就是对应的键 相关资料:http://www.w3.org/TR/1999/REC-html401-19991224/interact/forms.html#access-keys

一般按法也是 alt+key 来选中。不过各浏览器都不大一样。
IE系列使用alt+key,再加Entet回一下下车(如果是链接的话。)
FF2.0以下的是也是使用alt+key,不过如果是链接的话,直接打开,Netscape也是直接按Alt+key
FF2.0的,官方说:网页提供的快捷键 (Access key) 现在在 Windows 上请以 Alt+Shift+Key 来使用,在 Mac OS X 为 Ctrl+key,Unix 则是 Ctrl+Shift+key。,可是我的SUSE上的FF2.0仍然是用 Alt+Shift+Key,不知道是算什么系统。。-_-!!
除了alt+key外还要多按个键的做法是为了避免与浏览器的冲突,想法是好滴,可单手按起来并不方便。
Opera的是按下Shift+Esc 激活accesskey面板。再接Key直接选择,这是我以前做的小站的部分截图

跟Opera使用方式差不我的还有Konqueror,Konqueror 是个按下Ctrl 激活 accesskey 面板,除去已经分配的 accesskey外,会自动把其他的键按页面链接的顺序按XXX条件分配,字母分完了就分配数字,都分完了后面的就没有。不过Konqueror 这个浏览器,估计没什么人会去用,现在 linux 的发行版大多默认是 Firefox 。

Mac OS X 上的我就不知道。没钱买装的起这种系统的机子。x86的装了n个版本,N台机子,都没装上一个图型界面可用的。如有使用Mac OS的朋友告知一下,也许我哪天会用上Mac不用再想这个问题。

知道了accesskey 怎样操作后,思考一下,它应该用在什么地方。
一般来说,非打字状态下,我左手是放键盘左边或者拿烟,右手抓住鼠标,以防给人抢了。
如果有明显提示的 accesskey 并在 key 是键盘左边,我单手能很方便按到时才可能会使用,我比较懒 ^_#。

为什么说要有明显提示的 accesskey 才可能会使用会使用呢?我以前做的小站。是使用tip来提示的,我连自己做的东西都忘记了,更别说别人的。而如果按一个键要我把整只左手移到键盘的右边,我宁可使用鼠标操作。
那什么是明显的提示呢。看一下小甘甘滴小站吧,注意最上面的导航菜单。英文还是比较好做一点点,可以抽个字母来用,中文的我并没想到什么好一点的办法。也许像窗口的菜单的一样是个办法,中文的字并不能全排进键盘那些键里,就算可以排进去,又有多少人能记得住。

accesskey 的值可以是字母跟数字。一些浏览器并没有解决网页里跟浏览器里的按键冲突。 所以,并非所有的字母都适合使用。同时,一些浏览器的数字并不能使用小键盘里的数字。比如FF,
如果一个人会在网页里使用别人提供 accesskey 的话,理论上他也会使用浏览器上的来完成一些操作。当然,这只是我个人想法,并不知道别人是否也是这样。也许别人跟我一样,IE只是用来调试网页使用的。

如果在网页里使用的 accesskey 与浏览器上的菜单重叠了,比如 "V" 给网页用了,我就不能按 Alt+V, C 这样简单的在IE打开源文件来看,哎!做开发的人一天就知道看代码。 希望有在网页使用accesskey 的朋友不要选择与浏览器的有冲突的键。

除了菜单。还有什么地方常会用到呢?一般来说是表单,录入文字时我会使用双手。按键范围也就就大了。比如像一位台湾的朋友OOO的blog,在评论时可以用 accesskey 来选择要填的地方。像这样操作的确方便了点,不过我一般都不用。
一般我看文章时。右手还在鼠标上,拉到评论时,会顺便点在第一个 input 里,之后一般是按 Tab 来跳到下一个 input 或者别的,要返回上一个时,是按 Tab+Shift 来跳回,怎样说 Tab 键也是比较大一点的,方便按一点。

说着说着,好像accesskey 用处并不怎样的样子。其实,因为我们一般有鼠标用,如果没有鼠标呢?所以,大家买手机时最少得买有蓝牙可以控制电脑滴,要是鼠标不小心坏了,还可以临时当下鼠标用。在现在多数网站光使用Tab都比较难用滴,又有多少使用AJAX技术的网站来提高用户体验~结果是让我在鼠标出现问题时,连唯一的Tab都没用没了。

除去 accesskey 外,还有一些网站,强制使用键盘的某些键配合js来完成一些操作。比如按Home键就跳到首页,方向键向左是跳到上一篇文章,向右是跳到下一篇。有时,用着是挺方便的;有时,也许会很烦,因为原来的功能没了。

请不用在本小站尝试 accesskey,因为没有做之类的功能,只是昨晚有个朋友问到 FF2.0 按了没反应的问题,便写下自己的一些想法。也许,下一次改版,我会把小站做得更像样,也许,改版都可以省掉,因为很懒,忙其实只是个华丽的借口。


推荐阅读
  • Webmin远程命令执行漏洞复现及防护方法
    本文介绍了Webmin远程命令执行漏洞CVE-2019-15107的漏洞详情和复现方法,同时提供了防护方法。漏洞存在于Webmin的找回密码页面中,攻击者无需权限即可注入命令并执行任意系统命令。文章还提供了相关参考链接和搭建靶场的步骤。此外,还指出了参考链接中的数据包不准确的问题,并解释了漏洞触发的条件。最后,给出了防护方法以避免受到该漏洞的攻击。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 本文讲述了作者通过点火测试男友的性格和承受能力,以考验婚姻问题。作者故意不安慰男友并再次点火,观察他的反应。这个行为是善意的玩人,旨在了解男友的性格和避免婚姻问题。 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • 本文介绍了在Linux下安装Perl的步骤,并提供了一个简单的Perl程序示例。同时,还展示了运行该程序的结果。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • Ubuntu 9.04中安装谷歌Chromium浏览器及使用体验[图文]
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • 成功安装Sabayon Linux在thinkpad X60上的经验分享
    本文分享了作者在国庆期间在thinkpad X60上成功安装Sabayon Linux的经验。通过修改CHOST和执行emerge命令,作者顺利完成了安装过程。Sabayon Linux是一个基于Gentoo Linux的发行版,可以将电脑快速转变为一个功能强大的系统。除了作为一个live DVD使用外,Sabayon Linux还可以被安装在硬盘上,方便用户使用。 ... [详细]
  • Android源码深入理解JNI技术的概述和应用
    本文介绍了Android源码中的JNI技术,包括概述和应用。JNI是Java Native Interface的缩写,是一种技术,可以实现Java程序调用Native语言写的函数,以及Native程序调用Java层的函数。在Android平台上,JNI充当了连接Java世界和Native世界的桥梁。本文通过分析Android源码中的相关文件和位置,深入探讨了JNI技术在Android开发中的重要性和应用场景。 ... [详细]
  • 分享css中提升优先级属性!important的用法总结
    web前端|css教程css!importantweb前端-css教程本文分享css中提升优先级属性!important的用法总结微信门店展示源码,vscode如何管理站点,ubu ... [详细]
  • 本文介绍了网页播放视频的三种实现方式,分别是使用html5的video标签、使用flash来播放以及使用object标签。其中,推荐使用html5的video标签来简单播放视频,但有些老的浏览器不支持html5。另外,还可以使用flash来播放视频,需要使用object标签。 ... [详细]
author-avatar
自娱自乐GoGo
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有