Bir DIV öğesinde (jQuery kullanarak) tuşa basma veya tuşa basma olayını nasıl yakalarsınız?
DIV öğesine odaklanmak için ne gereklidir?
Bir DIV öğesinde (jQuery kullanarak) tuşa basma veya tuşa basma olayını nasıl yakalarsınız?
DIV öğesine odaklanmak için ne gereklidir?
Yanıtlar:
(1) tabindex
Özniteliği ayarlayın :
<div id="mydiv" tabindex="0" />
(2) Keydown'a bağlan:
$('#mydiv').on('keydown', function(event) {
//console.log(event.keyCode);
switch(event.keyCode){
//....your actions for the keys .....
}
});
Odağı başlangıca ayarlamak için:
$(function() {
$('#mydiv').focus();
});
div
Odak kenarlığını kaldırmak için - beğenmediyseniz - outline: none
CSS'de ayarlayın .
Daha fazla olasılık için anahtar kodları tablosuna bakın keyCode
.
JQuery kullandığınızı varsayan kodun tamamı.
#tabindex HTML niteliği, öğesinin odaklanıp odaklanamayacağını ve sıralı klavye gezinmesine (genellikle Tab
tuşla) katılıp katılmayacağını / nerede olduğunu gösterir . Tam referans için MDN Web Belgelerini okuyun .
İşte düz JS'deki örnek:
document.querySelector('#myDiv').addEventListener('keyup', function (e) {
console.log(e.key)
})
#myDiv {
outline: none;
}
<div
id="myDiv"
tabindex="0"
>
Press me and start typing
</div>