25

DIV要素でキーボードイベントをリッスンする方法はありますか?

私のコード:

​&lt;div id="div" style="height:50px" class="ui-widget-content"></div>
<input id="input">​​​​​​​​​​​​​​

​$('#div,#input').keyup(function(event){
    console.log(event.keyCode);
});​​​​​​

実際、コードは入力に対してのみトリガーされますが、divに対して処理できますか?

4

4 に答える 4

47

tabindexその中にを追加して、divこのようなキーボードイベントをキャッチできます

<div id="div" style="height:50px" class="ui-widget-content" tabindex="0"></div>

ここで答えたように。

ワーキングフィドル

参照

于 2012-05-23T15:00:31.087 に答える
5

を追加するtabindexと、機能するはずです

<div id="div" style="height:50px;" class="ui-widget-content" tabindex="1"></div>

デモ

于 2012-05-23T15:01:23.447 に答える
2

div に tabindex を追加する必要があります。

このフィドルを参照してください:

http://jsfiddle.net/w2Y4d/1/

于 2012-05-23T15:02:15.570 に答える
0

入力をdiv内に配置してから、$('#input')。closest('div')を見つけてみませんか?

それ以外の場合、例が入力とdivの関係のパターンである場合は、単に$('#input')。prev()?

于 2012-05-23T15:01:28.593 に答える