Bonjour. visiteurs jour : 37       Au président     Beauté santé     Infos loisirs     Ensemble      Jean      Informatique     Einstein     Santé corona

Les joies de l'informatique et de l'internet !





Coucou et merci


  Accueil - Disques - Excel - Informatique - Infos - Internet - Javascript - logiciels  - Programation - Sites RJ - Vidéo - Plan du site -



   

Intercepter les codes des touches tapées au clavier


Il existe, en Javascript, 3 évènements différents générés par l'utilisation d'une touche de votre clavier :
keydown / onkeydown : comme son nom l'indique, il est déclenché lorsque la touche est enfoncée.
keypress / onkeypress : on dirait un synonyme de keydown. Il est d'ailleurs déclenché juste après, toujours
quand on enfonce la touche. keyup / onkeyup : c'est le fait de retirer son doigt de la touche qui le déclenche.

une fonction appelée sur un évènement, prend en paramètre un objet de type Event. En provenance du clavier c'est KeyboardEvent
keyCode (entier) : code numérique représentant de façon unique chaque caractère.
Attributs indiquant si d'autres touches étaient enfoncées avant que celle-ci le soit aussi : (false or true)...
altKey (booléen) : indique si la touche Alt était enfoncée ou non
ctrlKey touche Ctrl enfoncée ou non
metaKey touche Meta (Windows sur Windows, Commande sur Mac) enfoncée ou non
shiftKey si la touche Majuscule est enfoncée ou non

onkeypress = function(e) {
      if(e.charCode == 8){
              alert('touche espace!');
       }
}

<script type="text/javascript">
document.onkeypress=function(e) {
       e=e||window.event;
        var key=e.which?e.which:event.keyCode;
        if (key==32) alert('Frappe de la touche espace !');
        else alert('Frappe de la touche de code '+key)
}
</script>

attention keypress ne répond pas (comme keydown) à toutes les touches comme Tab, Ctrl ou Shift qui ne correspondent pas à des caractères

document.addEventListener('keydown', function (e){
    if(e.keyCode == 'D'.charCodeAt(0)) {
        cancelKeypress = true
        e.preventDefault();
        document.getElementsByTagName("h1")[0].style.display = "none"
    } }


-
vues  1668     En ligne actuellement :   5   Total des clics  1655435