2012-01-17 9 views
0

フォームには複数のボタンがあるdivがあります。いずれかのボタンをクリックすると、このdivは非表示になり、新しいdivが表示されます。私の場合は、ボタンのクリックトリガーにajaxを呼び出し、新しく表示されたdivを設定するデータを呼び出します。ロードされるdivは、プレーヤーがプレイできるようにキーイベントをキャプチャするゲームです。WindowsのKeyEventターゲットFirefoxは非表示のボタンのままです

WindowsのFirefoxでは、すべてのキーイベントがbody要素ではなく最初のdivでクリックされたボタンを対象にしていることがわかりました。これは、enterキーがそのボタンを再クリックする(ゲームを再開する)ことを意味します。 divを切り替えるときにボタンを無効にすると、キーイベントはまったくトリガーされず(再生できなくなります)。

この状況に対処するにはどうすればよいでしょうか?

document.activeElement.blur() 

を、私は私のボタンのonclickの関数にこれを追加しましたし、これを解決するためのようだ:これは私自身の質問や回避策への答えですが、私が呼び出すことができるように見える場合

答えて

0

わかりません問題。

+1

なぜ私はキーイベントがバブルアップするので、ぼかしなしでイベントを取得しないのだろうかと思います。しかし、予期しない方法でキーイベントに反応しない要素にフォーカスを設定すると、問題の良い解決策のように思えます。 –

関連する問題