html输入属性“accesskey”浏览器兼容性

时间:2011-03-08 17:17:53

标签: javascript html browser cross-browser access-keys

哪些浏览器正在实现输入属性“accesskey”? 跨浏览器的行为是否一致? 使用accesskey作为额外数据属性是否安全(例如“rel”和“rev”有时会在a标记上使用?

另外,有没有办法在JavaScript中捕获“onaccesskeypress”?它只会触发onclick事件吗?

3 个答案:

答案 0 :(得分:2)

accesskey实施起来相当不稳定。 Firefox允许您将任何字符用作accesskey值,而Safari似乎只允许使用数字字符(例如,在this page上)。

下一个按钮映射到>访问键。它适用于Firefox( Ctrl > ,在Mac上),但不适用于Safari。

在我看来,如果键盘导航对您的网页至关重要,那么使用JavaScript是一个更好的选择。

有些resources我曾经得出结论。

编辑:经过一些实验,Safari似乎尊重字母数字字符的访问键。执行它们的按键是 Ctrl Alt {ACCESSKEY} 。我仍然认为JavaScript是实现键盘导航的最佳方式,但我认为为了清晰起见,我会添加此信息。

答案 1 :(得分:2)

浏览器支持:

所有主流浏览器都支持accesskey属性。虽然已经讨论过这对于可访问性是否有好处,但它仍然是HTML的一部分(从HTML5开始)。

一致的行为:

行为仅在浏览器和广告中保持一致。按下一组特定控制键和定义的accesskey键的平台将激活该链接。

根据定义,每个Web开发人员都可以随意定义访问密钥,并且没有商定的常用链接标准,例如“跳转到主要内容”,“主页”,“站点地图”等因此,网站与网站之间没有一致性。请参阅下面的建议。

访问这些键盘快捷键的控制键也有所不同,从浏览器到浏览器,从平台到平台,有时候浏览器版本之间也有变化。

Wikipedia page about access keys提供了大量浏览器的列表,应该为您提供最新的列表。

安全使用accesskey只是一个额外的数据属性:

我不确定'安全'是什么意思。以下是如何使用它的示例:

<a accesskey="9" href="/sitemap.html">Sitemap</a>

个人建议的访问密钥:

0 - 主页

9 - Sitemap

8 - 辅助功能页面(列出密钥)

1,2,3 ... - 主要导航项目,仅限顶级

答案 2 :(得分:0)

Every major browser supports accesskey(解析它并相应地分配键盘快捷键)。

这个问题是每个浏览器的控制键都不同。在IE上,它是Alt +键,Firefox使用Alt + Shift +键,Mac使用Ctrl +键。