如何在WebKit中用JavaScript获得accessKeyLabel?
var dogInput = document.getElementById('dog'); console.log(dogInput.accessKey); // Firefox, Webkit both output: "D" console.log(dogInput.accessKeyLabel); // Firefox output: "[ACCESS MODIFIER] D" // Webkit output: undefined 是否有另一种方法可以在WebKit中获取访问修饰符组合或AccessKeyLabel? 解决方案 这是Webkit中的一个未完成功能(已知错误):
0 2023-12-01
编程技术问答社区
如何在点击'显示更多'按钮后公布新内容?
我一直在尝试在用户单击后加载一些其他内容的区域中添加VO支持 Show more 按钮(请参阅附件的屏幕截图). 必需的行为: 我需要VO宣布有关另外加载元素的信息,例如"什么是cookie?还有11个项目". 尝试: 方法1:使用的aria-live =" parite" aria-relevant ="添加" 行为:宣布"什么是cookie?,浏览它,按钮." methot-2:二手角色="警报" 行为:宣布"什么是cookie?,浏览它&23个项目,警报,什么是cookie? 我如何获取有关添加项目的信息的信息? 在show-more点击之前 单击示例后 解决方案 听起来大部分是在工作.关键是使用 aria-live .请注意,当您使用您没有说您不喜欢方法1或方法2.您是否要宣布添加的每个瓷砖?我希望不是.对于屏幕阅读器而言,这太多了. 最初您显示12个瓷砖.当您单击"显示更多"时,添加了另外12个瓷砖.您到
0 2023-11-30
编程技术问答社区
构建一个可使用键盘的网络应用程序
您如何构建完整的键盘可访问的Web应用程序?假设这是针对受控部署环境(用于组织内)的访问(不向公共开放)的. 更新:忘了提到这是为了提高数据输入效率,而与残疾无关. 更新2:在整个应用程序中使用Flash是否有意义?考虑到环境是基于浏览的,而不是基于网络的? 解决方案 好吧,首先,您必须做出强有力的假设才能有机会实现您的目标: 您只需要支持一个浏览器.如果没有,您已经准备好在屁股过程中疼痛,因为所有浏览器都有不同的预定义快捷方式. 您将在受控环境中工作.与上述相同,使用所有这些插件以及在浏览器中添加功能性的关联工具,它会避免噩梦以避免冲突. 您将进行大量的用户接受测试!发现正确的捷径很难.必须在键盘上轻松到达,这有意义地被用户提醒,最后但并非最不重要的一点是,避免使用危险的快捷方式组合发生得太容易发生. 如果您不满足所有这些要点.停下来三思而后行,或者您将撞到墙. 其他解决方案 我已经使用了这个图书馆广泛地 shortcut.add("C
0 2023-11-29
编程技术问答社区
如何处理AngularJS中JavaScript被禁用的问题
angularjs取决于启用JavaScript.这意味着,如果有人访问了内置的AngularJS的应用程序或网站,则无法正确渲染. 使用AngularJS时使用JavaScript的访问者来处理哪些常见约定? 请解释为什么是这种情况? 问题中包含的是处理Angular JS指令和{{data_bindings}}的情况.因此,数据不会显示页面无法渲染页面的时间. 解决方案 在考虑了此问题的其他答案之后," 如何检测如果JavaScript被禁用?"以及对Angularjs的一些进一步研究. 首先,您将要隐藏通过数据指标显示的所有变量. 这可以使用 ng-cloak 被应用于html标签. {{bound_data}} 它还包括一个CSS标签来隐藏该元素. [ng\:cloak], [ng-cloak], [data-ng
0 2023-11-29
编程技术问答社区
在aria-label属性中重复元素的内容/文本
在下面的示例中,我的span内有一个aria-label,它的内容/文本的值与aria-label完全相同:在这种情况下,它是变量$order->status的内容 {{ $order->status }} 据我所知,如果内容完成工作,则一个shoudl不使用任何aria属性;但是在这种情况下,使用属性会使我的CSS变得更加容易和描述,因为我可以为每个状态进行样式,而无需创建新类或使用BEM的--flag.在这种情况下,是否允许aria-label? &[aria-label="Pago"] { background-color: $green; } 解决方案 aria-label在交互式元素(例如链接,按钮和表单元素)和地标(例如和).在没有请参阅" 2.10 2.10实用支持:Aria-label,Aria-l
0 2023-11-29
编程技术问答社区
aria-hidden=true是否意味着你不需要使用 display:none?
我听说,将display:none应用于不可见的事物更容易访问,而不是更改不透明度.但是,使用display:none弄乱了我的一些CSS动画,这些动画逐渐分层到核心功能上. 如果在我的CSS中,元素被隐藏在opacity:0中,并给出元素的aria-hidden=true角色,还是该元素也应该具有display:none? 在这种情况下,要考虑的另一个因素是ARIA角色由JavaScript(CSS具有A :hover pseudo-class后备)控制.因此,对于没有JavaScript的环境,该元素只会隐藏在opacity:0中. 解决方案 好吧,这基本上是aria-hidden的定义: 表示元素及其所有后代对作者实现的任何用户都不可见或可感知.请参阅相关的ARIA-DISABLED. 如果仅在某些用户操作之后可见一个元素,则作者必须将ARIA隐藏的属性设置为true.提出元素时,作者必须将ARIA隐藏的属性设置为false或删除属性,表明该元素是可
0 2023-11-29
编程技术问答社区
如果颜色是无障碍的,那么这些颜色之间的梯度是否可以无障碍?
我在绝对具有可访问性的网站上工作,我们的目标是至少AA标准.通常,我们会使用 https://contrast-ratio.com 和 https://contrastchecker.com 测试针对黑色或白色文本的背景颜色. 在这种情况下,让我们以18px的大小进行白色(#FFF)文本. 颜色一:#546FAF的比率为4.92 颜色2:#B349B1的比率为4.66 如果我在这两种颜色作为背景之间进行了线性梯度,那么在18px上的#FFF文本是安全的,明智的选择是安全的吗?我尝试过在看起来很近的文本附近的颜色采摘颜色,但是希望这是一个简单的答案,它永远不会低于4.5的比例. 谢谢! 解决方案 是的,如果您的两种颜色都通过对比度测试,那么您将是安全的,但这是假设在较深的梯度背景上(如您所指出的),对于梯度背景上的深色,则相反. 两个相等(或几乎相等)的亮度值时,当组合时倾向于在中间获得较低的亮度值. 两种颜色之间的对比基于亮度 : - (L1
0 2023-11-29
编程技术问答社区
什么叫网站的A/B测试?
请解释(示例)网站测试的A/B测试是什么. 解决方案 在网站的上下文中,这意味着网站/webApp的某些用户略微修改版本,您可以验证每个修改如何影响可用性/用户的行为为基线"控制"版本. 一如既往的A/B测试,这是一种统计技术,您需要足够大的样本来正确评估变化的影响. 这是由Amazon和Google /a>. 网络A/B测试上的一篇非常好的文章(具有营销角度)是: http://wwww.clickz .com/3349901 为了完整性,这是Wikipedia的完整A/B测试定义: a/b测试或水桶测试是 营销测试方法 将基线对照样本与 各种单变量测试 样品以改善响应 费率.经典的直接邮件策略, 该方法最近已采用 在互动空间内进行测试 横幅广告,电子邮件和等策略 着陆页. 可以看到重大改进 通过测试元素,例如复制 文本,布局,图像和颜色. 但是,并非所有元素都会产生 相同的改进,并通过查看 来自不同测试的结果 可以识别这些元素 始终倾向于产
0 2023-11-29
编程技术问答社区
有没有可能在iPhone上检测网页中的VoiceOver是否开启?
使用touchmaplite JavaScript库,我们目前正在测试部署" Slippy"地图(即用手指在触摸屏设备上四处移动的地图).该地图在我们的网页中嵌入为iframe. 当我们在用旁白的iPhone上测试此设置时,我们发现Voiceover被"卡在"地图上,并且不会读过它(或者确实滚动过它).对于我们来说,这是一个很大的绊脚石,我们不想在我们的网站上获得可访问性支持. 是否有可能通过画外音"忽略"元素,还是以任何其他方式(也许是JS)检测配音,然后隐藏/删除iframe? 解决方案 我知道Windows,有关如何检测是否使用ScreenReader的讨论.提到了一种可能(但不可靠的)方法,其中涉及在闪光灯中使用ActionScript来查看是否使用了WMICROSOFT AICTIVE可访问性层. (http://www.paciellogroup.com/blog/?p=61) 显然,这没有多大用处,因为您将声音瞄准用户,他们不会在其设备上获得Fla
8 2023-11-29
编程技术问答社区
是否有一种非笨拙的方法来防止iOS 11.3 Safari上的捏合缩放?
i 真的想要禁用捏合以放大我的网页(IFRAMES),并使用手指捏事件进行另一种自定义互动.因此,当苹果在 …实际上,他们在iOS上的野生动物园浏览器和iPados浏览器不尊重它. 防止视口缩放的能力通常对于网络上的游戏体验以及在按钮,输入框和滑入/滑出式接口类型(想想Tinder)附近的用户体验很重要.即使在视频上也不需要捏合,但是pinchzoom也许仍然对eReaders保持良好的默认值? 在这里值得一提的是,iOS Safari上也有一个剥离reader模式,可提供带有所需可访问性功能的整洁阅读. IMHO,应用针对网络上其他用例的低视力阅读器的可访问指南是超级严厉的.虽然可以使用passive事件侦听器禁用pinchzoom,但是为了卫生,问题是:是否有一种无用的方法? 在最近的讨论与W3C/WCAG团队的最
0 2023-11-29
编程技术问答社区
如何在手表上测试不同的字体大小(动态字体)?
Apple Watch支持在iPhone模拟器上,我可以启动设置>常规>较大的文本,并调整滑块,以查看我的应用程序的外观,具体取决于不同的字体尺寸. 如何为在模拟器上运行的Apple Watch应用程序进行等效吗? 解决方案 尚无可能.只需将其设置为粗体,并在您的故事板上进行一些更大的点进行测试即可. 对不起伴侣... 编辑:我只是跑了这个: https://developer.apple.com/watchkit/ 下载Apple Watch Design Resources,并查看指南>指南类型.在这里,您将具有适当的字体尺寸和权重的动态类型. 其他解决方案 您可以更改Apple Watch Simulator上的文本大小 - 设置>显示和亮度>文本大小.
0 2023-11-27
编程技术问答社区
解释ClickableViewAccessibility
关于 so Swipe Code ,Android Lint发出了警告 onswipetouchlistener#ontouch应在检测到单击时呼叫#performClick [ClickableViewAccctibility] 在警告描述中,它说: 如果覆盖ontouchevent或使用OnTouchListener的视图也不会 实现perfermick并在检测到点击时调用它,视图可能无法 正确处理可访问性操作.逻辑处理点击操作应 理想地将视图放置在#performclick中作为一些可访问性服务调用 当应该发生点击操作时,表演单. 您如何"正确处理可访问性操作"? 解决方案 警告之所以出现,是因为代码听onTouchEvent(请参阅文档,点3 ).有一个指向解决方案单击事件,但这无法解决是否需要进行滑动. 解决方法是使用触发与滑动事件相同动作的按钮.然后,使用@SuppressWarnings.
0 2023-11-27
编程技术问答社区
如果一个HTML元素有role="按钮",它是否也应该有属性 "名称"
如果html5 元素需要一个role="button"属性才能确保可访问性审核中的成功结果(成功标准4.1.2 [名称,角色,价值] .. DIV充当UI中的按钮),是否还需要有效的name属性(对于div,通常将其无效HTML5). 如果答案是否 - 我可以添加哪些其他可访问性友好属性来描述DIV按钮并符合标准?简单title属性或aria-label? 解决方案 我认为最初的问题是出于"名称"在" WCAG 4.1.2名称,角色,价值"中的含义的原因. name属性在 上确实是无效的.名称=用于命名对象,以便可以在JavaScript中引用它.它与可访问性无关. 4.1.2中的"名称"是指屏幕读取器和其他辅助技术将调用对象的内容.对于按钮,通常是按钮上显示的文本.对于输入字段,通常是该字段的标签.如果您有一个 ,则如其他人指出的那样,aria-label是您"命名"对象的方式. 当焦点转移到对象时,大多数屏幕读取器将读取对象的
0 2023-11-26
编程技术问答社区
按钮和链接的键盘触发器
在进行研究时,我遇到了 警告:标记使用按钮角色的链接时要小心. 期望使用 space键触发按钮,而链接 预计将使用 Enter 键触发. 有人知道为什么使用其他键用于按钮/链接? 使用 space 和 enter ? 可以触发触发 在阅读本文之前,我作为用户,不知道何时使用 space 或 enter . . 快速查看Google来看看他们的工作. for 链接 space 向下滚动和 enter 触发器 for 按钮 space 和 enter 触发>触发 解决方案 按钮是形式元素. 如果您选择checkbox元素, space 将切换复选框,而 Enter 将提交表单. 这样一致,按钮以相同的方式行动.实际上,他们同时接受 enter 和 space 没有任何区别. 不仅可以,而且您必须 阅读 aria的第三条规则: 例如,如果使用角色=按钮,则元素必须能够接收焦点,并且用户必须能够使用Enter(on
0 2023-11-26
编程技术问答社区
火狐4.01在X/html和javascript方面的奇怪行为
我为盲人与屏幕读取器的下巴和人声合成器互动的网络访问性工作. 我正在使用WAI-ARIA和JavaScript使用X/HTML来设计问卷用户测试的可访问网页. 在这种应用中,主要困难是面对不同的浏览器上的不同行为,以及版本的jaws屏幕读取器会产生不同的行为. 但是,发行Firefox 4(和下一个4.01)之后开始的问题. 盲人的Web问卷页面的相同代码与Firefox 4.01浏览器的新版本不再使用. 似乎尚未支持JavaScript的功能. 实际上,即使关闭了屏幕读取器,也会阻止与" TAB"键的交互. : - ( 在Firefox的第4版之前,相互作用很好. 相反,在Internet Explorer上,与" TAB"键的交互作用也在第8版和9版上被阻止了...我不知道为什么. : - ( 在这里,有一个代码的提取物,并在表单内有一个广播按钮. 表格是用于用户测试的问卷 表格中广播按钮和其他元素的行为应如下: 盲人使用" TAB"键从单选按钮
0 2023-11-26
编程技术问答社区
我如何指示屏幕阅读器将 "DoIT "读作 "do it"?
我正在研究一个网站,该网站在整个台面上使用首字母缩写词(" doit",发音为"做").不幸的是,屏幕读取器的视觉障碍读取器阅读缩写词错误(" duh-i.t."). 我认为有两种解决方案之一: 在整个网站(HTML5)上找到使用" doit"的每个元素"……我不知道该怎么做…… 添加某种类型的脚本,当使用屏幕读取器时,用" Do It"替换" DoIT"一词→我不知道该怎么做的事情. 整个网站,段落,标题,图片等都有很多文本.我知道我可以在某些地方使用alt属性,但不是全部,例如: Test for DoIT 我应该使用一些标签组合(span,label,alt),还是已经存在更好的东西了? 解决方案 如果" doit"是一个首字母缩写词,则应以启动标记(我们使用,但它已在HTML5中已弃用,所以让我们使用替代方案:DoIT) . 然后
0 2023-11-26
编程技术问答社区
当使用角色=选项时,让屏幕读取器读取前缀文本以及DOM内容
i具有role="listbox"的外部div和role="option"的几个内部div. 当我使用键盘上向下将焦点移动到内部div的元素中时,它将它们读出是" 1 of 5,element 1"," 2"," 5,元素2"," 3"," 3","元素3"和等等.. 我希望让它在阅读元素之前读取前缀文本,例如"前缀文本",因此它读为"前缀文本,1 of 5,element 1","前缀文本",2 ,元素2"等等.. 我尝试在外部div中添加aria-label="prefix text",但无济于事. 我在这里有一个codesandbox,显示DOM结构-e 解决方案 首先澄清问题时,当您说使用上下箭头键时,是否有或没有屏幕读取器运行?因为上下屏幕读取器正在运行时,将屏幕读取器的焦点移至下一个DOM元素,但是没有屏幕读取器的上下读取器将滚动页面,除非您陷入该键盘事件. 我问,因为您的代码示例似乎无法处理键盘事件,因此如果没有屏幕读取器运行,我就无法导航到
2 2023-11-26
编程技术问答社区
如何在一个网页中使脚注能够被访问?
在PDF文档中,有时将脚注放在每个页面的末尾以澄清某些术语或添加其他信息. 例如: 我希望创建一个具有脚注等效性的HTML网页. 该页面必须符合 Web内容可访问性指南(WCAG)2.0 ,级别AA下的可访问性指南.网页也必须在 html4 . 中 我的第一个想法是创建像Wikipedia上的参考部分这样的脚注.但是,我的网页可能会很长,我担心这样做可能会迷失方向,并导致他们失去对他们阅读的内容,如果他们需要一路滚动然后滚动然后备份.因此,这将无法访问. (如果我错了,请纠正我.) JavaScript显然是不行的,因为有些用户可以选择将其禁用,因此依靠它是无法访问的. 我考虑打开一个新窗口,其中包含提供的其他信息.但是,打开一个新窗口也可以在可访问性方面打开一个全新的蠕虫,因此,如果可能的话,我希望避免使用. 我知道有一个标签,但是从我的理解中,这个标签是引用参考文献,如果我的目的是提供其他信息,则不合适. (同样,如果我错了,请纠正
0 2023-11-26
编程技术问答社区
如何通过上/向下箭头键访问Div或<li>
所以我有几个div一个下方.我希望它们通过箭头键"可访问",即,如果我按下键,则应突出显示div,如果我按下UP键,则应突出显示. 如果我有一个按钮,我可以使用tabIndex属性来实现它. 事物是div s不是可行的项目.因此,如果我可以通过选项卡以某种方式使他们访问,则可能会使用户感到困惑.因此,我只想通过键盘的箭头键. 如果可以实现所需的行为,我什至愿意将其转换为 . 在 Div 1 Div 2 Div 3 Div 4 这是我尝试使用 s的方法.但是,如果我单击第一个li,我不能通过按下向下箭头突出显示下一个. list 1
0 2023-11-26
编程技术问答社区