2017-01-23 63 views
-1

我有一些动态生成的html使用Dojo库构建下拉菜单。我需要让我的代码可访问性标准,对现在的屏幕阅读器查看菜单项,并把它读成普通的HTML:由屏幕阅读器读取标签html字符串

menu.addChild(new MenuItem({ 
     label: "<a onclick=window.location.href='sampleurl.com' 
        href="sampleurl.com">Sample Link</a> ... 

借口的onclick,它是一个不同的问题,但什么我得到基本:

选项卡下到第一个菜单项

屏幕阅读器:“不是的onclick减等于窗口点的位置点的href等于SAMPLEURL” ...等

我用咏叹调,hidde尝试n,但是屏幕阅读器只是将其作为文本读取,我在Mac OS上使用语音,但我也需要它符合JAWS。任何提示或建议?谢谢!

回答

2

标签用于标签(可以是HTML),不用于放置完整的链接html标签。

请参阅下页关于如何使用Dojo库生成菜单项: https://dojotoolkit.org/reference-guide/1.10/dijit/Menu.html

例子:

menu.addChild(new MenuItem({ 
    label: "Sample Link", 
    onclick: function() {window.location.href='sampleurl.com';}})); 
0

这将更容易与一个工作示例一起调试,并指出您正在使用的屏幕阅读器/浏览器组合。在最低限度,向我们展示脚本的HTML输出,因为它正在为屏幕阅读器编写HTML进行解析。

这就是说,我怀疑缺失/不一致的引号。请注意,您使用双引号开始字符串,然后进入onclick属性,并且没有引号,然后围绕其值引用单引号,然后在href周围使用双引号。

另外,你正在写整个字符串到页面,并以某种方式HTML编码它。

我建议使用linting工具来检查你的JS。

相关问题