wiem, że do obsługi zdarzenia klawiatury w polu wejściowym można użyć:Jak pobrać zdarzenia klawiatury na elemencie, który nie akceptuje fokusu?
$('input').keyup(function(e){
var code = e.keyCode // and 13 is the keyCode for Enter
});
Ale teraz, mam kilka div
i li
elementy, a nie mam element form
i żaden z moich elementy są uważane za elementy formularza i żaden z nich nie akceptuje focus lub tab i tym podobnych.
Ale teraz potrzebuję obsługi zdarzenia keyup
(lub keydown
lub keypress
, nie ma znaczenia) w elemencie div. Próbowałem:
$('div#modal').keyup(function(e){
if (e.keyCode == 13)
{
$('#next').click(); // Mimicking mouse click to go to the next level.
}
});
Ale problem polega na tym, że nie działa. Co mam zrobić?
ja nie rozumiem, jak można złapać keyup w elemencie, które nie mają ostrość .. –
Uzgodnione - trzeba mieć pojęcie, w jaki sposób użytkownik będzie wchodził w interakcję z nieinteraktywnym elementem za pomocą klawiatury. – kinakuta
@kinakuta & @Igor Dymov - Możesz użyć atrybutu 'tabindex', aby ustawić fokus" div ". Zobacz moją odpowiedź. –