2013-03-26 69 views
5

我有三个锚点标记,其中一个带有内部文本,另外两个带有有效alt文本的图像。内部带有文本的锚标签可以与JAWS一起正常工作,并且可以正确读取。但是,由于某种原因,使用内部图像的锚点,正在应用tabIndex为-1,这意味着它们将被跳过。JAWS屏幕阅读器将tabIndex的-1添加到锚点与图像

这是在IE 9中测试。有什么理由为什么会发生?有没有办法阻止它?

回答

3

JAWS自动将tabindex =“ - 1”添加到具有href =“javascript:void(0)”的锚定标记。我用href =“#”来解决你的问题。

3

我有一个类似的问题,JAWS将tabindex的链接设置为-1。这是与IE9与JAWS 14.0

该问题最终导致由JAWS在“Web/HTML/PDFs” - >“链接”称为“过滤器连续重复链接”下的设置。 JAWS描述如下功能:

此选项控制是否过滤指向同一位置的连续链接,一个图形和一个文本。选中后,只会公布文本链接。该复选框是默认选中的。

例如,假设你有一个图标/文本链接对两者做同样的事情:

<a href="javascript:void(0)" onclick="test();"> 
    <img src="untitled.png" title="Test" alt="Test"> 
</a> 
<a href="javascript:void(0)" onclick="test();">TEST</a> 

通过设置托运JAWS将删除选项卡顺序只留下文字图像链接如下:

<a tabindex="-1" href="javascript:void(0)" onclick="test();"> 
    <img src="untitled.png" title="Test" alt="Test"> 
</a> 
<a href="javascript:void(0)" onclick="test();">TEST</a> 

从我的经验和一些基本的测试,我相信当一个图像链接后面是重复的文字链接,而不是相反,这仅适用。它也适用于图像/文本对之后的任何重复图像链接。

我遇到的问题是JAWS只能比较href属性,并没有考虑其他属性,如onclickonkeydown。将这一对与适用于初始图像/文本链接对之后的任何图像链接的重复删除结合起来,您可以最终得到图像/文本链接对之后的图像链接获取时不应该得到的情况。例如:

<a href="javascript:void(0)" onclick="test();"> 
    <img src="untitled.png" title="Test" alt="Test"> 
</a> 

<a href="javascript:void(0)" onclick="test();">TEST</a> 

<a href='javascript:void(0)' onclick="dontTest();"> 
    <img src="untitled2.png" title="Test" alt="Test"> 
</a> 

结果:

<a tabindex="-1" href="javascript:void(0)" onclick="test();"> 
    <img src="untitled.png" title="Test" alt="Test"> 
</a> 

<a href="javascript:void(0)" onclick="test();">TEST</a> 

<a tabindex="-1" href='javascript:void(0)' onclick="dontTest();"> 
    <img src="untitled2.png" title="Test" alt="Test"> 
</a> 

注:事实href设置为javascript:void(0),纯属巧合。只要所有链接的值相同,此行为就可以使用href的任何值重现。

希望这可以帮助别人。

+0

JAWS使它成为一场噩梦! – Liber 2015-08-10 07:50:40

+0

+1很高兴找到这个和上面的答案。是疯了,该tabindex = -1。我不知道这个解决方案是否适用于我的问题,但至少知道问题来自哪里是很有帮助的。 – Rohan210 2016-04-25 16:12:02