2017-03-02 3 views
0

私のコードにはボタンがあり、クリックするとdivが表示されます。この部門では、別のキーボード操作をしたいと思っています。しかし、ユーザーが 'タブ'を押すと、フォーカスは開いたボタンに戻ります。だから私がやろうとしていること:別の関数内の要素にイベントをアタッチする

function showMydiv(item) { 

....... 

$('div#myDiv').on('keydown','a', {item:item}, function(event){ 
...... 
if (event.which == 9) { 
event.data.item.focus(); 
} 
}); 

} 

問題は常に項目が最初にクリックされたボタンです。私はこのハンドラを添付するたびにそれを作ることができます、divを開いたボタンになる項目は?この関数にattachイベントを入れて何度も呼び出されるのは正しいのでしょうか?

+0

HTMLとサンプルデータを追加 –

答えて

0

解決策は、パラメータとして渡す新しい項目ごとに 'keydown'イベントを切り離して添付することでした。私の間違いは、私が一度だけそれをつけていたということでした。

関連する問題