2010-11-29 6 views
3

の外に出る、ユーザーがTABキーを使用して、コントロールをナビゲートすることができます。Flexのアクセス可能性 - タブフォーカスがアクセスフレックスアプリではフレックスアプリ

フレックスアプリがユーザーaftert htmlページの一番上にポップアップ表示には、特定のリンクをアクティブにし、swfobject.embedSWFを使用してロードされます。

それはほとんどの場合に適していますが、いくつかのインスタンスのいずれかまたは両方のこれらのことが起こるがあります

a)はフレックスアプリがロードOK、「フレックスフォーカスが」読み出すイントロテキストラベルに設定されています大声ではあるが、タブを押しても、ページの後ろのリンクを繰り返しているようだ。 (現在は修正済み、編集2を参照)

b)フォーカスはうまくいっていて、コントロールを介してタブサイクルを押してもOKですが、フレックスアプリからアドレスバーに移動します。それをクリックせずにフレックスアプリに戻ろうとする悪夢となってしまいます。それは、アクセシビリティにはあまり適していません。

起こってからこれらを防止するための方法はありますか?

EDIT:ターゲットブラウザがIEです。 Jawsで最もよく使われていると思われる

EDIT:私は問題(a)を解決することができました。トリックは、swfオブジェクトにフォーカスを呼び出すことでしたが、わずかな時間が経過した後で、flash/js ready状態で何かする必要があります。

setTimeout(function(){ 
    document.getElementById('swfobject').focus() 
},25); 

問題(b)はまだかかわらず、問題...

答えて

3

:アプリケーション・コンポーネント、は、keyFocusChangeのイベントリスナーを追加し、このコードを追加します。

protected function application1_keyFocusChangeHandler(event:FocusEvent):void 
{ 
    event.preventDefault(); 
    focusManager.getNextFocusManagerComponent(event.shiftKey).setFocus(); 
} 
+0

完璧に動作します。ニース – Ben

0

b)は、HTML内のSWFの後にいくつかのフォーカス可能な要素を配置するようにしてくださいです。フォーカスがフレックスアプリから離れると、その要素のonfocusハンドラが呼び出されるかどうかを確認します。そうであれば、そこからFlexアプリケーションを再フォーカスしたり、必要な場所にリダイレクトしたりすることができます。あなたMXで

関連する問題