# Gepost op 03-01-2010 20:54
Bewerkt door vlerknozem op 09-01-2010 21:38
Bewerkt door vlerknozem op 09-01-2010 21:38
In deze mini tutorial vertel ik hoe je in javascript gebruikers iets kan laten doen met het toetsenbord. In javascript kan je events opvangen. Events zijn gebeurtenissen zoals een muisklik of een toets dat ingedrukt wordt, etc. Aan elke event zit weer informatie gekoppelt. De event die wij nu gaan opvangen is de 'onkeydown' event. Dus als men een toets van het toestenbord naar beneden duwt.
Om nu erachter te komen welke toest men heeft ingeduwt gaan we kijken naar de keycode. Dit is informatie die dus mede wordt doorgegeven met de event. Elke toets heeft zo zijn eigen code.
De return false in de functie zorgt ervoor dat de browser niks meer doet met de betreffende toets. Druk je bijvoorbeeld op F1, dan wordt normaal een hulpvenster van de browser geopend. Door de return false wordt dat dus voorkomen. Met bovenstaande functie kan je meteen de keycode opzoeken van een bepaalde toets.
Als je nu een alert wil wanneer men op enter druk kan je dus dit gebruiken:
Willen we nu meer keycodes gebruiken dan kunnen we het beste een switch gebruiken.
Om nu erachter te komen welke toest men heeft ingeduwt gaan we kijken naar de keycode. Dit is informatie die dus mede wordt doorgegeven met de event. Elke toets heeft zo zijn eigen code.
- // We sturen de onkeydown events door naar de functie checkKeycode
- document.onkeydown = checkKeycode
- // De functie checkKeycode krijgt een variabele mee, de informatie over de event.
- function checkKeycode(e) {
- // We declareren even een lege variabele
- var keycode;
- // Kijken of we de keycode kunnen opvragen (in elke browser werkt het weer anders)
- if (window.event) keycode = window.event.keyCode;
- else if (e) keycode = e.which;
- // Keycode alerten
- alert(keycode);
- return false;
- }
De return false in de functie zorgt ervoor dat de browser niks meer doet met de betreffende toets. Druk je bijvoorbeeld op F1, dan wordt normaal een hulpvenster van de browser geopend. Door de return false wordt dat dus voorkomen. Met bovenstaande functie kan je meteen de keycode opzoeken van een bepaalde toets.
Als je nu een alert wil wanneer men op enter druk kan je dus dit gebruiken:
- // We sturen de onkeydown events door naar de functie checkKeycode
- document.onkeydown = checkKeycode
- // De functie checkKeycode krijgt een variabele mee, de informatie over de event.
- function checkKeycode(e) {
- // We declareren even een lege variabele
- var keycode;
- // Kijken of we de keycode kunnen opvragen (in elke browser werkt het weer anders)
- if (window.event) keycode = window.event.keyCode;
- else if (e) keycode = e.which;
- // Als de keycode 13 is, alert
- if(keycode == 13) {
- alert("Je hebt de enter toets ingedrukt");
- }
- return false;
- }
Willen we nu meer keycodes gebruiken dan kunnen we het beste een switch gebruiken.
- // We sturen de onkeydown events door naar de functie checkKeycode
- document.onkeydown = checkKeycode
- // De functie checkKeycode krijgt een variabele mee, de informatie over de event.
- function checkKeycode(e) {
- // We declareren even een lege variabele
- var keycode;
- // Kijken of we de keycode kunnen opvragen (in elke browser werkt het weer anders)
- if (window.event) keycode = window.event.keyCode;
- else if (e) keycode = e.which;
- switch(keycode) {
- case 32:
- alert("Auw! Niet zo hard slaan op de spatiebalk! Dat doet pijn :(");
- break;
- case 13:
- alert("Je hebt de enter toets ingedrukt");
- break;
- default:
- alert(keycode);
- break;
- }
- return false;
- }
Lees de forum regels
)