2016-04-27 6 views
1

スクリーンリーダーにariaを使用しています。次のエラーでスクリーンリーダーに焦点を当てるにはどうすればよいですか?私はrole ="error" tabindex="-1"を追加しましたが、エラーが発生したときにはフォーカスしません。メッセージにスクリーンリーダーのフォーカスを設定するには

<div role ="error" tabindex="-1" ng-class="{ 'alert': flash, 'alert-success': flash.type === 'success', 'alert-danger': flash.type === 'error' }" ng-if="flash" ng-bind="flash.message" style="text-align:left;" class="ng-binding ng-scope alert alert-success">Item has been added to Shopiing cart</div> 
+1

タグ[tag:ada]は、プログラミング言語Adaについてです。私はあなたがアメリカ障害者法を意味すると確信しています。 –

+0

@SimonWright - はい、障害のあるアメリカ人のために... divやpタグなどのエラーメッセージに集中できるようにする必要があります – user244394

答えて

0

あり、コンテキストの多くは、このためではないですが、あなたが本当にフォーカスを設定する必要がある場合、私は疑問に思うでしょう。

フォーカスが必要な場合は、JavaScriptの.focus()でのみ可能です。これに追加されたtabindexは、フォーカスが設定されたときにタブ順序が維持されることを意味します。

ただし、これを使用して、アイテムが追加されたかどうかをユーザーに知らせることができます。実際の相互作用/動きの必要性があるようには見えません。

フォーカスを使用すると、現在の場所からページのまったく新しい領域に移動する可能性があります。ユーザーにジャンプした次のステップがない場合は、次に何をするか分からないことがあります。

しかし、アリアは現代版のスクリーンリーダーによって理解されており、使用できるaria-live属性があります。ユーザーが最初に対話を終えるのを待つように丁寧に設定することができます。私はあなたの役割を警告するように変更します。

この方法では、ユーザーはページとやりとりを続けながら、何かが成功したかどうかを警告できます。

関連する問題