WAI-ARIA链接角色可以用于将任何元素变成超链接吗?

3
我正在创建一个导航列表,其中链接到各种不同的文章。过去,我将导航列表定义为包含单个

自然地,li元素不允许href属性。关于XHTML 2.0的一些内容... - BoltClock
2
“是否可能在不实现任何其他元素的情况下,让浏览器包含此功能?” - 不可能。如果您想链接到某个地方,请使用 a 元素,这就是它们的作用。 - CBroe
我可以添加一个简单的JavaScript点击处理程序,但这对于键盘用户也不起作用。右键打开新标签页也不起作用。为什么不在这里使用<a href=...>呢?为什么要犹豫不决地添加其他元素呢? - BrendanMcK
1
我更新了我的答案,包括你对链接预览悬停的疑问所涉及的信息。 - Andy Noelker
1个回答

3
不,WAI-ARIA的“link”角色仅仅是描述性的,旨在帮助像屏幕阅读器这样的设备。它不会引入任何功能。当链接不是“a”元素而是使用javascript模拟的链接时,它特别有帮助。
回答你的第二个问题,当你悬停在锚标签上时,链接预览是浏览器的状态栏的一部分。默认情况下,浏览器不允许你通过javascript来操作它,因为那会被认为是一个重大的安全漏洞。否则,你基本上无法相信预览是准确的,并且很容易欺骗人们点击恶意链接。
那么说,有些浏览器会允许您通过更改浏览器设置或安装插件来操纵此选项。这在实际应用中并没有太多作用,因为大多数用户不会体验到这种变化,但似乎这是唯一的办法。我发现Firefox上有最详细的文档,可以在window.status页面中设置window.status = 'www.fakeurl.com'但是在此之前,您需要将dom.disable_window_status_change首选项设置为false才能正常工作。
如果在状态栏中显示文本是绝对必需的,则唯一的方法是使用a元素。一般而言,如果您的应用程序允许使用a元素进行导航,则应始终使用a元素进行导航。借助CSS3,很难想象您无法这样做的情况,因为您可以将该锚点标签样式化成几乎任何您想要的外观。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接