2011-07-11 1 views
0

Flexアプリケーションがアクセシビリティに準拠しています。カスタムコンポーネントが何らかの条件に基づいて表示されると、コンポーネント内の最初のアイテム(テキストまたはフォームアイテムまたはテキストエリア)がJawsによってスキップされます。 2番目の項目から読み込みます。上矢印を押すと、最初の項目が読み取られます。 UPの矢印を押す必要なしに最初のアイテムにアクセスできるようにする方法はありますか?Flexカスタムコンポーネントの最初の項目がJAWSによって読み取られない

+1

をコンポーネントを追加するコードを表示します。 –

+0

ここに擬似コードを追加するだけです。 << mx:Application>ここで、CustomComp2は最初はvisible = falseになります。アプリケーションで満たされたいくつかの条件に基づいて、CustomComp2は、comp2.visible = trueを使用してスクリプトで表示されます。この場合、CustomComp2内の最初のコントロールはスクリーンリーダーJAWSによってスキップされます。また、Tabキーを押すと、JAWSソフトウェアの実行中に最初のコントロールをスキップします。 JAWSをオフにしてからTabキーを押すだけで、カスタムコンポーネントの最初のコントロールはスキップされません。どんな助け? – user839631

+0

あなたの質問をコードで編集してください... –

答えて

0

これは、フォーカス管理に関連する可能性があります。

ビューステートが変更されたときに、現在のビューの最初のコンポーネントにcomponentId.setFocus()を割り当てたいと思う可能性があります。

ディスプレイの状態が変化したときに、フォーカスを再評価する必要があります。表示状態をどのように管理しているかを投稿した場合は、イベントまたはカスタム状態メソッドを使用して表示する方法を正確に提案できます。それが動作しない場合

また、画面一度これを試して準備/状態が変更されます。

focusManager.moveFocus(mx.events.FocusRequestDirection.TOP); 
+0

私はsetFocus()を試しました。 setFocusはScreenリーダーのフォーカスを移動するのに役立たなかった。 – user839631

+0

明確にするために、setFocus()はフォーカスを期待どおりにフィールドに正しく設定しますが、スクリーンリーダーは依然として間違ったフィールドを読み込んでいますか? – Nate

+0

フォーカスマネージャを絶対トップに設定する別の方法で更新されました。それはトリックを行う可能性があります。 – Nate

関連する問題