1

AJAXを介して更新するフォームがある場合、元の値フィールド(ブラウザーに出力されたとき)が、フォームフィールドに現在含まれているテキストと一致しない可能性があります。

目の不自由なユーザーから、Jaws 9以降がリッチインターネットアプリケーション(特にAJAXとDOMの変更)を強力にサポートしていることを知っていますが、このサポートがJaws 7(リリースとして)まで遡るかどうかはわかりません。歴史が意味する)。

基本的に、2つの懸念があります。

  • 値が設定されていない状態でフォームを完全に空白でロードし、AJAXを使用してページのロード時(またはユーザーがボタンを押した後)にデータをロードした場合、Jawsは挿入された値を読み取りますか?

  • 値が設定されたフォームをロードし、それらの値がAJAXを介して変更された場合、リーダーは値または画面に表示されている内容を読み取りますか?

私の望みは、これが古いバージョンの欠陥が私の好意で機能するケースであり、常に画面に表示されているもの(入力フィールド)を読み取り、値を無視することです。また、フォームの値が変化することを期待しているため、ロードされたものだけでなく、現在のものを読み取ります。

しかしもちろん、後で他の方法を見つけるのではなく、確実に知りたいと思います。

4

1 に答える 1

2

スクリーン リーダーは、独自のバージョンのインターフェイス (「仮想バッファー」) と対話します。Web ページと対話するスクリーン リーダー (少なくとも JAWS) は、実際には DOM からのノードの読み取りと、画面に表示される内容のスキャンを組み合わせて実行しているようです。ですから、答えは「場合による」と思います。@pst が示唆しているように、これを実際にテストすることに代わるものはなく、可能な場合はスクリーン リーダーのユーザーによって行われます。

ソリューションのオプションは次のようになります。

スクリーン リーダーなどの支援ソフトウェアと通信するための最新のアプローチについては、WAI ARIAをご覧ください。Gez Lemon がWAI ARIA の優れた紹介を書いています。時間をかけて読む価値があります。

古いスクリーン リーダーは仮想バッファの更新が苦手ですが、JAWS 7.1 以降では開発者にこのためのメカニズムが提供されています。ここでも、Gez Lemon がImproving Ajax applications for JAWS usersのブログで協力しています。これをさらに深く掘り下げたい場合は、James Edwards による優れた背景資料と研究も参考にしてください。

于 2011-03-24T12:13:48.807 に答える