繁体   English   中英

OnClick和OnKeyPress符合标准

[英]OnClick and OnKeyPress for standards compliance

我正在一个大型网站(1600多页)上工作,需要升级才能通过标准。 因此,对于每个OnClick,必须有标准,一个OnKeyPress处理程序,以便不使用鼠标的人仍然可以访问内容。

有些标签有一个onclick javascript处理程序。 例如:

<a onclick="doSumat();">

以下是跨浏览器,正在运行的javascript:

<a onclick="doSumat();" onkeypress="this.onclick();" >

它是否可以在所有浏览器中可靠地运行,并且结果与使用屏幕阅读器的人的鼠标点击相同?

W3C - SCR35:使用锚点和按钮的onclick事件使操作键盘可访问。

虽然“onclick”听起来像是绑定到鼠标,但onclick事件实际上映射到链接或按钮的默认操作。 当用户使用鼠标单击元素时会发生默认操作,但当用户聚焦元素并命中输入或空格时,以及通过辅助功能API触发元素时,也会发生默认操作。

来源http://www.w3.org/TR/WCAG20-TECHS/SCR35

在这种情况下,为什么不调用doSumat(); 使用onclick和onkeypress处理程序?

如果你需要this上下文,那么你需要使用doSumat.call(this); ,但你仍然可以将它放在两个处理程序中。

<a onclick="doSumat();" onkeypress="doSumat();">

有1600页,我想你正试图通过onclick处理程序找到一些简单的附加到每个元素的东西,但定义规则以盲目地复制从onclick语句到onkeypress表达式的所有内容应该不那么复杂。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM