标签: wai-aria

向 jQuery .toggle() 方法添加 WAI-ARIA 支持

我想将WAI-ARIAaria-hidden支持与 jQuery 的 .toggle() 方法结合起来。

所以给出 <p id="myElement">Hi there</p>

$('#myElement').toggle()将隐藏元素,并设置aria-hidden="true"

<p id="myElement" style="display: none;" aria-hidden="true">Hi there</p>

$('#myElement').toggle()再次执行相同的脚本将显示(切换)元素,并设置(切换)aria-hidden="false"

<p id="myElement" style="display: block" aria-hidden="false">Hi there</p>

我可能想使用该方法的完整功能,也许类似于

$('#myElement').toggle(
    if ($this.css('display')==='none'){
       $this.prop('aria-hidden', 'true')
    }
    else
    {
            $this.prop('aria-hidden', 'false')
    }
)
Run Code Online (Sandbox Code Playgroud)

扩展.toggle()以切换aria-hidden状态的最佳解决方案是什么?

jquery accessibility wai-aria

5
推荐指数
1
解决办法
4365
查看次数

aria-owns, aria-invalid, aria-expanded 的解释和例子

我正在查看一些代码,其中一个标签具有属性aria-owns, 和aria-expanded. 我用谷歌搜索他们,但没有找到足够的细节来完全理解他们的工作。

有人可以解释这些特定属性的用途吗?我对 aria 属性的作用有一个大致的了解(我已经使用过aria-labelledby)?

html javascript accessibility wai-aria

5
推荐指数
1
解决办法
4797
查看次数

元素导航上属性角色的错误值分页

我在 W3C 验证中收到此错误。我正在使用 HTML5 文档类型<!DOCTYPE html>

元素导航上属性角色的错误值分页。

为了

<nav class="pagination" role="pagination">
Run Code Online (Sandbox Code Playgroud)

有谁知道如何解决这个问题或这背后的原因是什么?W3V 验证器不支持 ARIA 吗?

html w3c w3c-validation wai-aria

5
推荐指数
1
解决办法
3704
查看次数

ARIA 角色是否由后代继承?

在下面的标记中,我在<main>元素周围有一个包装器,用于展示目的。

<div id="main-wrapper" role="presentation">
  <main id="main" role="main">
    <h1>Title</h1>
    <p>Lorem ipsum, dolor sit amet.</p>
  </main>
</div>
Run Code Online (Sandbox Code Playgroud)

但是我不确定ARIA 角色是否由后代继承。如果<main>元素被视为展示性的,因为它周围的包装器具有role="presentation".

此处是否正确使用了 ARIA 角色?ARIA 角色是如何继承的?

html accessibility wai-aria

5
推荐指数
1
解决办法
469
查看次数

表外字段/值对的正确 ARIA 属性?

我们需要布局大量的数据。一个简单的表可以很好地工作,但我们正在使其完全响应,因此对于简单的字段/值对,我们试图避免对表标记过于疯狂,以使回流更容易一些。

过去,我会首先使用定义列表:

<dl>
    <dt>Label</dt>
    <dd>Value</dd>
</dl>
Run Code Online (Sandbox Code Playgroud)

但是……它们也有缺点……也就是说,屏幕阅读器等并不总是能识别此标记的语义值,因此经常不受欢迎。

在语义和可访问性(以及 HTML5)方面,是否有一组特定的 ARIA 属性可以使它变得更好?

如果是这样,我应该使用哪些?我在网上找到的示例通常用于 a) 标签/字段对或 b) 将 ARIA 标签用于不可见标签。两者都不适合这种情况。

这是我认为我们需要的:

<div class="datawrapper">
    <div class="label" **some-ARIA-attribute-to-attach-this-to**="value1">Label</div>
    <div class="value" id="value1">Value</div>
</div>
Run Code Online (Sandbox Code Playgroud)

是否有专门为此设计的 ARIA 属性?ARIA 是否有更好的解决方案来使其易于访问?

html accessibility tabular wai-aria responsive-design

5
推荐指数
1
解决办法
1018
查看次数

如何在响应式网站上实施 ARIA

我们正在努力使我们的响应式站点之一更易于访问,但我们正在努力了解 ARIA,因为它似乎违背了将设计元素与 HTML 分离的核心原则。

例如,如果一个元素隐藏在 aria 中,则将其表示为 aria-hidden="true"。然而,大多数可见性是由媒体查询决定的,具体取决于屏幕大小等。

在其他情况下,元素的工作方式与媒体查询完全不同。因此,在某些尺寸下 aria-haspopup="true" 将是合适的,而在其他分辨率下,导航始终可见。

我是否遗漏了什么,或者我们是否再次使用此标准进行字体标签?我们是否应该适当地使用 javascript 添加/删除 aria 标签?

accessibility wai-aria responsive-design

5
推荐指数
0
解决办法
1218
查看次数

如何限制屏幕阅读器不阅读某个文本?

想象一下,我有一个<div>with aria-labelas “Read this”(aria-label在运行时添加)。在里面<div>,我有一个<span>带有文字“不要阅读这个”的文字。

现在大白鲨正在做的是,它同时读取文本(“阅读这个”和“不阅读这个”)。

<div aria-label="Read this">
  <span>Do not read this</span>
</div>
Run Code Online (Sandbox Code Playgroud)

期望是只阅读“阅读此内容”。反正有没有限制屏幕阅读器强制停止阅读文本?

html accessibility screen-readers wai-aria jaws-screen-reader

5
推荐指数
1
解决办法
4321
查看次数

如何使 &lt;noscript&gt; 元素可访问?

我正在使用WAVE(Web 可访问性评估工具)Chrome 扩展程序测试我的应用程序,并且我的<noscript>元素收到警告。具体来说,警告告诉我:“确保脚本化的内容是可访问的。内容将呈现给极少数用户,但如果使用,则必须是可访问的。”

现在,我一直在努力寻找可行的解决方案(尝试使用aria-hidden="true"),但似乎无法找到确定的解决方案。任何的想法?

编辑:我的<noscript>元素仅包含一串文本:“您需要启用 JavaScript 才能运行此应用程序。”

谢谢!

html accessibility noscript wai-aria

5
推荐指数
1
解决办法
3683
查看次数

VoiceOver 大写的小词被读为缩写

我有以下标题

<h1>ADD MONEY</h1>
Run Code Online (Sandbox Code Playgroud)

它被 VoiceOver 读为

加钱

而如果我将文本更改为小写,它将正确读取为“加钱”。你有什么建议吗?我已经尝试过使用aria-labelledby没有运气!

html accessibility screen-readers voiceover wai-aria

5
推荐指数
1
解决办法
1741
查看次数

返回顶部链接的可访问性

我正在处理一个相对较长的网页(4 页以上)。为了便于使用,我在页面底部添加了返回顶部链接。

我想知道,是否可以使用 aria-hidden="true" 和 tabindex="-1" 从屏幕阅读器或辅助工具中跳过此链接。这是否不符合可访问性标准?

由于返回顶部箭头在页面底部可见,是否有必要让屏幕阅读器用户可以使用此链接?到目前为止,我的理解是home键作为键盘/屏幕阅读器用户的返回顶部。

任何建议都会非常有帮助。

html accessibility tabindex wai-aria

5
推荐指数
1
解决办法
2250
查看次数