首页 文章

如何防止Windows讲述人阅读<title>文本

提问于
浏览
0

当我将焦点设置在body标签上时,Windows叙述者会读取标签中的文本 . 我怎样才能防止这种情况发生?

我试过aria-hidden =“true”,role =“presentation”,tabindex =“ - 1” . 这些都不起作用 .

2 回答

  • 0

    似乎是一个Internet Explorer错误,而不是一个Narrator错误,因为我听到使用NVDA与IE相同的问题 . 我在@LukeT提到的SO线程中使用了jsfiddle示例 . 我不知道该示例代码是否与您的类似 . 也许你可以发布你的代码 .

    从SO线程,代码是(有微小的变化):

    <div tabindex="0" id="page-wrapper" role="region" aria-labelledby="title1">
      <h2 id="title1">page 1</h2>
      <ul>
        <li tabindex="-1" style="display:none" presentation" aria-hidden="true">alpha</li>
        <li>beta</li>
        <li>gamma</li>
      </ul>
    </div>
    

    如果我点击或标签到 <div> ,我会听到 alpha ,即使它有可能使其隐藏的所有属性 . 我可以通过各种变化解决问题,但因为我不知道你需要哪一个 .

    以下是解决问题的方法(以下任何一项 - 您不需要全部执行):

    • 使用文字字符串( <div ... aria-label="page 1"> )将 <div> 上的 aria-labelledby 更改为 aria-label . 这意味着它有 <h2> 的重复文本,但它有效 .

    • <div> 删除 role

    • <h2> 中添加了 aria-label ,这很奇怪,因为它只是复制了 <h2> 中已经嵌入的内容 .

    如果您发布代码,也许我们可以找到适合您案例的内容 .

  • 2

    我找到了这个帖子on the topic . 显然你已经尝试了上面提到的解决方案,但是下面还有一个额外的评论可以帮助你处理明确的标签 . 此外,在讨论中,它还提到Microsoft Edge也在这方面做出了贡献 .

    希望这可以帮助!

相关问题