Wie fängt man das Tastendruck- oder Tastendruckereignis auf einem DIV-Element ab (mit jQuery)?
Was ist erforderlich, um das DIV-Element fokussieren zu können?
Wie fängt man das Tastendruck- oder Tastendruckereignis auf einem DIV-Element ab (mit jQuery)?
Was ist erforderlich, um das DIV-Element fokussieren zu können?
Antworten:
(1) Legen Sie das tabindex
Attribut fest:
<div id="mydiv" tabindex="0" />
(2) An Keydown binden:
$('#mydiv').on('keydown', function(event) {
//console.log(event.keyCode);
switch(event.keyCode){
//....your actions for the keys .....
}
});
So legen Sie den Fokus auf den Start:
$(function() {
$('#mydiv').focus();
});
Um den Fokusrand zu entfernen, wenn Sie ihn nicht mögen div
, legen Sie ihn outline: none
im CSS fest.
Weitere Möglichkeiten finden Sie in der Tabelle der SchlüsselcodeskeyCode
.
Der gesamte Code setzt voraus, dass Sie jQuery verwenden.
#Hier ein Beispiel für einfaches JS:
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>
Das HTML-Attribut tabindex gibt an, ob sein Element fokussiert werden kann und ob / wo es an der sequentiellen Tastaturnavigation teilnimmt (normalerweise mit der Tab
Taste). Lesen Sie die MDN-Webdokumente als vollständige Referenz.