问题标签 [nvda]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angularjs - 屏幕阅读器 NVDA 2015.2 两次读取 AngularUI 的日期选择器的标题
所以我使用了一个有角度的 UI Datepicker: link to gitgub with NVDA screen reader (latest version)。
问题与表标题活动区域有关:切换到另一组数据(年、月、日)时,有时会读取两次标题:
这是一个 HTML 结构:
此可访问日期选择器示例中使用了相同的 ARIA 角色。但是,在上面的示例中,标题只被读取一次。
任何帮助或建议将不胜感激。
jquery - NVDA 不读取 div 标签内的文本。(通过 tabIndex=0 获得焦点后)
我在使用 nvda 时遇到问题。我有一个主 div 标签,并且在该 div 标签内有多个 div 标签。每当我单击按钮时,这个主要的 div 标签就会获得焦点。我期望屏幕阅读器应该阅读整个内容。我能知道我缺少哪些代码吗?
这是muy fiddle:http: //jsfiddle.net/o27ogt2z/
HTML 代码:
这是我的 JS 文件。
预期是: 1:我会点击保存按钮点击。因此焦点将转移到“mrn_description”div。之后,我希望屏幕阅读器能够阅读该 div 中的所有内容。包括子 div 和 span。而专注于NVDA并没有阅读任何内容。在我标签焦点后将转到后退按钮。现在,如果我将转换 + 制表符(返回)以专注于“mrn_description”标签,那么NVDA会读取所有内容。任何有关填空的帮助。
accessibility - aria-label、aria-labelledby 和 aria- describeby:屏幕阅读器中非常不可预见的行为
我刚刚注意到,虽然aria-label
,aria-labelledby
和aria-describedby
属性据说适用于每个元素(参见https://www.w3.org/WAI/PF/aria-1.1/states_and_properties#aria- describeby),但它们似乎只适用于很少有类似的元素a
,而不是例如div
或p
NVDA 和 JAWS 中的元素。
我创建了一个小代码笔来演示这个问题(使用浏览和焦点模式浏览它):
https://codepen.io/jmuheim/pen/avWbPe
例如,在 NVDA 中,在a
元素上,aria-label
和aria-labelledby
似乎在浏览模式和焦点模式下都有效。但aria-describedby
只在焦点模式下宣布,而不是在浏览模式下。
对于input
元素,似乎没有一个属性在浏览模式下工作,但都在焦点模式下工作。
p
对于像or这样的“纯”文本元素div
,似乎没有一个属性起作用。
在 JAWS 中,这是非常相似的行为,但至少对于p
元素而言,当有 时aria-describedby
,它宣布可以通过按“JAWS + alt + r”来读取描述。
我真的没有看到明确的模式,所以我想知道屏幕阅读器中关于如何使用这些属性的一般规则是什么?或者更好:为什么不像规范建议的那样,它们只适用于每个元素?
html - 如何防止屏幕阅读器从 IE 中的 img 标签读取 src 属性
在 IE9 或更低版本的屏幕阅读器中,我面临一个非常直接的问题。当屏幕阅读器查看具有src
属性的图像标签时,它会读取src
. 即使该alt
属性存在,它也会读取src
.
非常清楚:这只发生在 IE 9 或更低版本中
这是我的代码的一个非常简单的示例:
我不明白为什么会这样。任何有关如何解决此问题的帮助或不,没有解决方案加上证明这一事实,将不胜感激。
qt - 为什么 Qt 应用程序标题后跟屏幕阅读器上的应用程序路径?
我在 Qt 中有一个简单的应用程序,它有一个QMainWindow
和一个QWebEngineView
加载 html 页面的应用程序。我已经设置了QApplication
名称和QMainWindow
标题。
当我使用屏幕阅读器时,它会将主窗口标题读取为:
FooApp C:/Users/tulio/Desktop/TestApp//bin/debug/test.exe
我只需要它来读取应用程序名称,我该怎么做?
主文件
主窗口.cpp
主窗口.h
teste.pro
索引.html
jquery - 如何将 tabindex=0 添加到所有内部元素
我想将包含文本tabindex
的所有元素(除了包装的父元素)添加到所有元素中,这样我就可以通过它们进行选项卡并使用屏幕阅读器阅读。
我想只选择跨度,但是将 tabindex 添加到每个跨度是乏味的。这只是一个小例子。sceanrio 可以是元素中更深层次的文本,而不仅仅是表格格式。
使用类似下面的东西,无论如何都会为我获取文本,但不会阅读它
是否有任何解决方案可以获取所有最后的标签并将 tabindex attr 添加到每个标签?
这样我就可以集中注意力阅读。
jquery - 当日历聚焦和模糊时,FF 中的 NVDA 屏幕阅读器会多次读取日期
嗨,我正在尝试提供对jquery datepicker
.
当NVDA
我导航到其他日期时正在阅读日期。
我的问题是最初datepicker
打开时,焦点日期被读取 4-10 次。当datepicker
关闭时,日期被读取 4-10 次
HTML:
JS:
我该如何解决这个问题。我可以使用任何角色或 aria 属性来阻止它多次读取。
在这里小提琴:http: //jsfiddle.net/archanabr05/D4AGz/719/
accessibility - 您可以强制屏幕阅读器将数字读取为单个数字吗?
电话号码通常都是数字,忽略括号、破折号、加号等,因此电话号码的输入字段通常是数字。
当屏幕阅读器遇到数字输入字段时,它会将值作为整数读取。例如,如果我有三个用于美国电话号码的输入字段,第一个是区号(3 位),然后是交换机(3 位),然后是线路(4 位),如果字段有 123、456 , 7890(分别),我们通常说这个数字的方式是“一二三”、“四五六”、“七、八、九、零”。
但是当屏幕阅读器遇到这些字段时,它会显示“一百二十三”、“四百五十六”、“七千八百九十”。
我认为屏幕阅读器用户习惯于将电话号码听成大数字(至少我谈过的人是这样期望的),但这并不意味着我们不能让它变得更好。如果我向其中一个人询问他们的电话号码,他们不会使用大数字,而是使用单个数字。
我尝试了各种 <input> 类型并查看了所有角色、状态和属性,但没有看到任何可以强制读取数字的内置内容。
我能想到的就是围绕它进行编码,方法是使用一个视觉隐藏的 <span>,其中包含作为单独数字的数字 <span id='foo'>1 2 3</span>,然后使用 <input aria-labelledby= '富'>。
有没有更好的办法?
html - NVDA 在 Chrome 中两次读取文本
对于以下标记:
这是 NVDA 正在读取的内容:
火狐
电子邮件地址编辑空白
IE
电子邮件地址编辑空白
铬合金
电子邮件地址 编辑电子邮件地址 空白
似乎 chrome 也在读出placeholder
文本,但 Firefox 和 IE 没有。删除placeholder
文本不是一种选择,因为它是一项要求。
在这种情况下,有没有办法让 Chrome 不阅读placeholder
文本?