簡體   English   中英

屏幕閱讀器和 JavaScript 焦點事件的可訪問性?

[英]Accessibility with screen-readers and JavaScript focus events?

我有一個表單,其中包含一些 JavaScript,可以在輸入有效文本時前進到下一個字段(示例如下)。 我的問題是屏幕閱讀器是如何處理的。 這會讓讀者感到困惑還是會檢測到焦點的變化並將新字段讀出給用戶?

HTML

<form action="/some/action" method="post" role="form">
    <legend>A Form</legend>
    <label for="first_number">First Number</label>
    <input id="first_number" name="first_number" required type="text" value="">
    <label for="second_number">Second Number</label>
    <input id="second_number" name="second_number" required type="text" value="">
    <button type="submit">Submit</button>
</form>

JavaScript

(function (document, window) {
    function getFocusCallback(current_focus, go) {
        var check = document.getElementById(current_focus);
        var el = document.getElementById(go);
        var pat = new RegExp('^\\d{3}$');
        return function callback() {
            if (pat.test(check.value)) {
                el.focus();
            }
        };
    }

    document.getElementById('first_number').addEventListener('input', getFocusCallback('first_number', 'second_number'));
})(document, window);

因此,在用戶在第一個字段中輸入三個數字后,將在第二個字段中調用 focus 方法。

我認為這里的問題是意外行為 對於沒有視力的用戶,任何非標准行為都可能造成混淆,因為它的工作方式與其他網站不同。

此外,這是您在每個領域都會擁有的功能,還是只是其中一些領域? 如果您有多個具有不同行為的字段,那將特別令人困惑。

幾年前有一個關於這個的很好的線索,有幾個比我更了解的人的意見。 https://lists.w3.org/Archives/Public/w3c-wai-ig/2015AprJun/0162.html

您需要單擊每個頁面底部的“下一條消息”鏈接才能閱讀線程中的所有消息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM