2016-06-30 8 views
0

私は、WAI-ARIA属性を使用してADAに準拠するために私がクライアントのために開発したサイト(私は誰とも言えません)を最適化しました。私はボタンのようにスタイリングしたアンカーに "role = button"を追加し、要素に "tabindex = 0"を追加するような小さなJSライブラリを作成するほうが簡単ではないかと疑問に思っていました。 「tabable」にしたいと思っています。JSでWAI-ARIA属性を追加する

JSでWAI-ARIA属性を追加するのがよいのか、それとも嫌なのか疑問に思っていました。アクセシビリティ評価ツールの中には、JSの評価時にJSのJSを実行しないため、実際にはそうでないときに痛みを感じると思われます。

答えて

0

を使用している場合、私はprogressive enhancementの利益のために、それはすべてに置くのがベストかもしれないと思うことに注意してくださいかもしれあなたのARIAはインラインで、それを追加するためのスクリプトに依存しません。

他のスクリプトエラーがある場合、接続が切断された場合、途中にブロックスクリプトがある場合などは、ライブラリが再生されず、修復作業が失われます。

また、スティーブが上記のリンクについてrole=buttonを使用したことについても説明したいと思います。特に、ビジュアルスタイル(ボタンのように見えるようにする)は、スクリーンリーダーの使用には無意味であると考えています(多くのARIAの役には効果があります)。私は、より詳細in another SO answerに他のキーボード操作の落とし穴を取り上げたが、ここであなたがボタンにリンクを有効にしようとするときに考慮すべきものです:

ハイパーリンク(<a href>)が入力したキーを押すことで焼成することができます。しかし、実際の<button>は、エンターキーまたはスペースバーを押すことで起動できます。ハイパーリンクにフォーカスがあり、ユーザーがスペースバーを押すと、ページは1画面分スクロールします。いくつかの支援技術のユーザーは、使用された要素に基づいて動作を期待します。

また、対話型要素でない限り、タブ可能にしたい要素にtabindex=0を置くことに注意します。たとえば、見出し(たとえば<h#>)に置かないでください。スクリーンリーダー(たとえば)が見出しのナビゲーションをすでに許可しているので、誰かがタブをタップすることができます。

+0

If視覚スタイルのボタンはハイパーリンクにすぎず(スクリプトの介入なしに別のページに移動する)、ロールを変更しないでください。単にハイパーリンクをそのままにして、あなたのスタイルを適用し、ストレスを感じないでください。この方法では、リンクをボタンに変換するだけでは、リンクをリンクとして機能させることはできません。私は少し物事を明確にすることを願っています。 – aardrian

関連する問題