代码之家  ›  专栏  ›  技术社区  ›  mbm29414

JAWS 2018:选择/下拉“可点击”

  •  -1
  • mbm29414  · 技术社区  · 7 年前

    我正在做一个网站项目,并修复可访问性缺陷。

    我的设置限制:

    • 操作系统为Windows7/10
    • 辅助功能软件为JAWS 2018.1804.26


    我有一个缺陷,说一个HTML <select> (下拉)应按JAWS列出在“可单击”元素中(这是按时显示的模式对话框 Ins公司 + Ctrl键 + / 键盘和弦)我以前在其他HTML元素类型中遇到过这种问题,我通过以下组合解决了这些问题:

    • onclick 处理程序(在我的例子中,是一个空函数)
    • 将值添加到 aria-label 属性(在我的例子中是动态的)

    在当前缺陷中尝试执行这些步骤时,我可以 < 显示在“可点击”模式对话框中,但没有列出任何文本(我猜它“报告”了一个空字符串)。这是尽管有价值的 .


    • 这个 <选择> 问题是在一个 <span> 那是在一个 <td> 1.

    <table>
      <tbody>
        <tr>
          <td>
            <span>
              <select> ... options ... </select>
            <span>
          </td>
        </tr>
      </tbody>
    </table>
    

    <table>
      <tbody>
        <tr>
          <td>
            <span>
              <select onclick="emptyHandler" aria-label="Some text"> 
                ... options ... </select>
            <span>
          </td>
        </tr>
      </tbody>
    </table>
    
    function emptyHandler() {
        /* This function is empty by design     */
        /* Its function is to expose an element */
        /* as a clickable element to JAWS, when */
        /* otherwise JAWS would ignore it.      */
    }
    

    进行上述修改 做

    1. 我没有为这个页面编写UI,我也没有意愿(也没有授权)重写整个页面。我怀疑包装控制了<跨度>elements在与JAWS交互时会做一些非常不稳定的事情,但我无法修复 那个


    关于这一点,我有几个问题,因为我找不到很好的文档来说明它到底是如何工作的:

    1. 单击 处理程序似乎允许
    2. “可点击”模式对话框在JAWS中究竟是如何工作的?我想我已经找到了如何将一个元素放入这个列表中的方法,但是它显示的内容似乎有点不一致。这让我想到。。。
    3. 是什么 出现在模态对话框中?在以前的测试中,显示的文本似乎是 aria标签
    4. 是不是一个不恰当的期望 <选择> 元素会出现在这里?出于这个原因,我总是可以回退这个缺陷,但是我不想这样做,除非我确信这是正确的操作过程。
    2 回复  |  直到 7 年前
        1
  •  2
  •   slugolicious    7 年前

    加上这些细节,我现在明白了问题所在。“可点击”对话框( ins公司 + + / onClick() 但用于 <select> 该对话框中的元素是 价值 选择的,以 <option> aria-label 或 aria-labelledby 或 <label for="select-id"> 不影响可单击对话框,尽管在 <button> ,例如, 在那个对话框中工作。

    < C 以及显示所有 <选择> 元素是 ins公司 + ctrl键 + C 还有那个对话 尊敬 或 aria-labelledby' <label for=“select id”> .

        2
  •  1
  •   André Polykanine    7 年前

    <select> 对于JAWS用户来说,绝对不是可点击的元素。这个按键带来了一个元素列表,这些元素可以单击,但是不能被识别为其他元素:链接、按钮、组合框。
    插入 + Ctrl键 + C 相反。