2011-03-24 5 views
1

確認用ポップアップ(popup_ok & popup_cancel)に2つのボタンがあります。ユーザーが何をしたいかを決めるまで、2つのボタンのいずれかにフォーカスを制限します。親切に、事前に、より良いアプローチにjqueryでのフォーカスのヘルプ

おかげで私を案内、Uptillは現在、以下の

$("#popup_cancel").blur(function() { 

    $("#popup_ok").focus(); 
    $("#popup_ok").focus(); 

}); 

をやってイムが、これは動作しません。

+0

達成したいことをさらに広げなければならないかもしれません。私は1つのために、分かりません。 – Matt

+0

あなたがしようとしていることを言い換えてください。 –

+0

ポップアップの種類は何ですか? –

答えて

1

私はそれがblur()イベント内focus()を実行するために実用的ではありませんと仮定し、しかし、あなたが主張すれば、私はイベントバブルの外を実行するためにフォーカスを強制的に小さなタイムアウトを使用することができアドバイス:

setTimeout(function() { $("#popup_ok").focus(); }, 10) 

eval()の使用を防ぐMattのコメントに基づいて更新されます)

+0

文字列ではなく、 'setTimeout'(そしてそのために' setInterval')に関数を渡すことをお勧めします。文字列を渡すと 'eval()'が適用され、 'eval()'が悪いことがわかります。 'setTimeout(function(){$( '#popup_ok')。focus();}、10);' – Matt

+0

+1良いアイディアです。 :) –