【发布时间】:2011-10-01 18:32:53
【问题描述】:
我知道要处理输入字段中的键盘事件,您可以使用:
$('input').keyup(function(e){
var code = e.keyCode // and 13 is the keyCode for Enter
});
但是,现在,我有一些 div 和 li 元素,而我没有 form 元素,而且我的元素都不被认为是表单元素,它们都不接受 焦点或标签之类的东西。
但现在我需要在 div 元素中处理keyup(或keydown,或keypress,没关系)事件。我试过了:
$('div#modal').keyup(function(e){
if (e.keyCode == 13)
{
$('#next').click(); // Mimicking mouse click to go to the next level.
}
});
但问题是,它不起作用。 我该怎么办?
【问题讨论】:
-
我不明白你怎么能在没有焦点的元素中捕捉 keyup..
-
同意 - 需要了解用户将如何使用键盘与非交互式元素进行交互。
-
@kinakuta & @Igor Dymov - 您可以使用
tabindex属性使div接受焦点。看我的回答。
标签: javascript jquery keyboard keyboard-events