2013-03-06 32 views
2

这里的情形;我需要屏幕阅读器为标题读取其他内容,而不是实际显示的内容。JAWS无法读取ARIA标签为标题

“我的标题”显示屏幕,但是阅读器读取“这是我的标题是”

<div> 
    <div aria-hidden="true">My Heading</div> 
    <div aria-label="This is my Heading" role="heading" aria-level="1" tabindex="0"></div> 
</div> 

上面的代码实现了对VoiceOver的所需的行为,但我不能让JAWS做同样的。任何想法如何使它在JAWS中工作?

最终,我将寻找一个解决方案,就是用这两个的VoiceOver和JAWS兼容。

感谢

回答

0

是 - 我一直在试图做类似的

<div >  
    <div id="entryLabel">This is My Label</div> 
    <div tabindex="0" aria-labelledby="entryLabel">This My Value</div> 
</div> 

东西大白鲨似乎不读咏叹调标记通过,如果一个div元素上使用!这可能是JAWS - 但它可能是浏览器未暴露的信息?

我已经注意到了使用ARIA标签相同。

0

我建议用咏叹调 - labelledby,这与大多数屏幕阅读器和浏览器和替代的工程ARIA标签的举动。

示例代码

<div> 
    <div aria-hidden="true">My Heading</div> 
    <div aria-labelledby="myheading" role="heading" aria-level="1" tabindex="0"> 
    <span id="myheading" style="visibility:hidden;">This is my Heading</span> 
    </div> 
</div>