accessibility 相关问题

可访问性旨在使每个人都可以使用应用程序或网站,包括视力,听觉,走动或认知障碍等残疾人。

当模态打开时,NVDA 不会宣布“对话框”

在这个简单的模态示例中,角色设置为对话框,并且在打开对话框容器时接收焦点,但 NVDA 不会在开始时宣布“对话框”一词。我注意到有潜力...

回答 1 投票 0

如何让屏幕阅读器读取非制表位的控件(例如静态标签)?

我希望屏幕阅读器(Narrator、JAWS、NVDA)能够在我的基于 WinRT/C++ WinUI3 XAML 的窗口上大声朗读某些标签的文本,以便视力受损的用户可以了解

回答 1 投票 0

aria-desiredby 的正确用法是什么?

假设我有以下代码: 你叫什么名字?* 请写下您的全名(... 假设我有以下代码: <div> <label for="name-input">What is your name?*</label> <p id="description">Please write down your full name (first and last)</p> <input id="name-input" type="text" name="name" aria-describedby="description"> </div> 在我的字段容器内,我有一个标签和描述。紧接着,我就有了 <input> 元素,其中 aria-describedby 引用了描述。这是此标签的正确用法吗?我在一些地方读到,aria-describedby最适合用于距离较远或位于输入元素之后的描述。有什么建议或改进吗? 您在这里描述的本质上是上下文帮助信息,或者类似于工具提示的内容。 我认为您的示例的编码方式没有任何问题。我在 NVDA/Chrome 上测试了它,效果很好。您可以采取的另一种方法是将该信息作为子元素包含在 <label> 中,但您的方法也同样有效。 如果您不确定正确的用法,最好查阅规范: https://www.w3.org/TR/wai-aria-1.2/#aria-desiredby

回答 1 投票 0

将辅助功能事件传递到后台线程获取 null

尝试使用Android AccessibilityService,将AccessibilityEvent传递给AsyncTask,但AccessibilityEvent中的所有值都消失了,例如mEventTime变为0,mPackageName变为null等。无法...

回答 3 投票 0

如何让辅助技术用户可以访问“添加到列表”模式?

给出以下代码: const form = document.getElementById("items-form"); const input = form.querySelector("输入"); const list = document.getElementById("items-list"); 函数 addItem(e)...

回答 1 投票 0

如何使用 wai-aria 标签使相关复选框可访问?

我的 DOM 中有以下代码: 你懂什么语言? ... 我的 DOM 中有以下代码: <fieldset> <legend id="language-legend">What languages do you know?</legend> <p id="language-description"> You can select one or more. </p> <div class="form-check"> <input name="language" class="form-check-input" type="checkbox" value="python" id="language-checkbox-1" aria-labelledby="label-1 language-legend" aria-describedby="language-description"> <label id="label-1" class="form-check-label" for="language-checkbox-1"> Python </label> </div> <div class="form-check"> <input name="language" class="form-check-input" type="checkbox" value="javascript" id="language-checkbox-2" aria-labelledby="label-2 language-legend" aria-describedby="language-description"> <label id="label-2" class="form-check-label" for="language-checkbox-2"> JavaScript </label> </div> <div class="form-check"> <input name="language" class="form-check-input" type="checkbox" value="c++" id="language-checkbox-3" aria-labelledby="label-3 language-legend" aria-describedby="language-description"> <label id="label-3" class="form-check-label" for="language-checkbox-3"> C++ </label> </div> </fieldset> 我正在做以下事情: 使用 <fieldset> 和 <legend> 对相关复选框进行分组 每个复选框都有相同的name,即name="language" 每个复选框都由 <legend> 和使用 <label> 标签的实际 aria-labelledby 元素进行标记。 每个复选框均由 <p> 使用 aria-describedby 标签进行描述。 我是否正确使用了所有 aria 标签?此表单字段是否完全可访问? 编辑 Gemini 建议重写以下内容: <fieldset aria-describedby="language-description">  <legend>What languages do you know?</legend> <p id="language-description"> You can select one or more. </p> <div class="form-check"> <input name="language" class="form-check-input" type="checkbox" value="python" id="language-checkbox-1"> <label class="form-check-label" for="language-checkbox-1"> Python </label> </div> <div class="form-check"> <input name="language" class="form-check-input" type="checkbox" value="javascript" id="language-checkbox-2"> <label class="form-check-label" for="language-checkbox-2"> JavaScript </label> </div> <div class="form-check"> <input name="language" class="form-check-input" type="checkbox" value="c++" id="language-checkbox-3"> <label class="form-check-label" for="language-checkbox-3"> C++ </label> </div> </fieldset> 这实际上更好吗? 唯一可以改变的是aria-labelledby aria-labelledby 字段中的 input 标签应引用 id 的 label,而不是 id 字段本身的 input。另外,除非您引用它,否则您不需要段落标签 id <p>。 使用字段集和图例元素对相关复选框进行分组真是太好了。这是增强表单语义结构和提高可访问性的好方法。 示例: <fieldset> <legend id="language-label">What languages do you know?</legend> <p>You can select one or more.</p> <div class="form-check"> <input name="language" class="form-check-input" type="checkbox" value="python" id="language-checkbox-1" aria-labelledby="language-label language-label-1" aria-describedby="language-description"> <label class="form-check-label" id="language-label-1" for="language-checkbox-1"> Python </label> </div> <div class="form-check"> <input name="language" class="form-check-input" type="checkbox" value="javascript" id="language-checkbox-2" aria-labelledby="language-label language-label-2" aria-describedby="language-description"> <label class="form-check-label" id="language-label-2" for="language-checkbox-2"> JavaScript </label> </div> <div class="form-check"> <input name="language" class="form-check-input" type="checkbox" value="c++" id="language-checkbox-3" aria-labelledby="language-label language-label-3" aria-describedby="language-description"> <label class="form-check-label" id="language-label-3" for="language-checkbox-3"> C++ </label> </div> </fieldset>

回答 1 投票 0

非拉丁字母键盘上的键盘快捷键/命令 (JavaScript)

我想让键盘快捷键适用于尽可能多的键盘布局,包括其他字母。 我知道就拉丁键盘而言,最好使用 KeyboardEvent.key 属性...

回答 1 投票 0

如何在 LazyRow 中为每个项目获取 onFocusChanged?

我正在致力于辅助功能实现(盲人残疾),一旦用户向左或向右滑动以便将焦点移到 LazyRow 中的项目上,我需要知道...

回答 1 投票 0

select2 表单控件在 Tab 键切换时不聚焦

尝试在字段上切换时,字段将不会突出显示。我尝试了很多解决方案,例如: .select2-selection__rendered:焦点{ 大纲:无!重要; 框阴影:0px 0px 5px 2px

回答 1 投票 0

如何在辅助功能模式下关闭撰写对话框?

有一个撰写对话框 ... 对话( 属性 = DialogProperties(usePlatformDefaultWidth = false), onDismissRequest = { eventReceiver.contentEventReceiver.onCellClick?.invoke...

回答 1 投票 0

人工智能影响现在

显然,人工智能是一个非常有用的工具,但人工智能正在如何发展以及它对社会的潜在影响是什么?我有兴趣了解人工智能技术如何进步,

回答 1 投票 0

使 UIAlertControlleraccessibilityLabel 与标题不同

我正在为 VoiceOver 暗示应用程序中的一些字符串。我正在扩展一些缩写,例如“opp”→“opposite”和“ave”→“avenue”,以便 VoiceOver 正确发音。不过,我想用...

回答 2 投票 0

覆盖SeekBar的默认对讲公告

在 setOnSeekBarChangedListener 和对讲中应用 Seekbar 的辅助功能内容描述是读取搜索栏评级状态(以百分比表示),然后读取内容描述,例如“100% 10 ...

回答 1 投票 0

有没有办法让链接在屏幕阅读器上显示为纯文本,但明显是一个链接?

我们正在努力减少屏幕阅读器在我们的博客文章中读出的冗余链接。目前帖子的标题是可点击的链接,“阅读更多”也是可点击的

回答 1 投票 0

AppleScript:终端中的“系统事件”不起作用

任务: 我正在使用 AppleScript 打开 Numbers 文件并隐藏一列。选择要隐藏的列后,我使用“系统事件”进入“数字”菜单并隐藏该列。

回答 1 投票 0

如何使用 at-spi2 将 Ctrl-l 键输入发送到 GNOME 文件选择器对话框?

我想在 Linux 上控制 chromium 文件选择器对话框,而无需任何人为干预。 我正在尝试使用 at-spi2 和 python 来实现它。 (由 gobject-introection 制作的 at-spi2 python 绑定) 我

回答 1 投票 0

正确的 Aria 标签?

我有一个带有图标的按钮,可以打开移动导航。我在按钮上有: :aria-expanded="active" //用JS切换 aria-controls=“菜单” aria-label="打开菜单" ...

回答 1 投票 0

tabindex 的行为不符合预期。我做错了什么?

我通常不会弄乱 Tab 键顺序,但我有一个使用 LeafletJS 的地图应用程序,并且不希望仅使用键盘的用户必须使用 tabindex="...

回答 1 投票 0

在 Delphi 中创建可访问的 UI 组件

我正在尝试从标准 VCL TEdit 控件检索可访问的信息。 get_accName() 和 Get_accDescription() 方法返回空字符串,但 get_accValue() 返回文本值

回答 3 投票 0

android开发java和kotlin哪个更流行?

我想学习android开发,但是在选择应用程序开发语言时我有点困惑。请向我推荐当今更流行的语言。据我说...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.