Bonjour,
comment fait-on pour savoir si le clavier à son pavé numérique verrouillé ?
Version imprimable
Bonjour,
comment fait-on pour savoir si le clavier à son pavé numérique verrouillé ?
un test sur le onkeydown ...
En fait je ne veux pas appuyer sur le bouton de verrouillage numérique mais vérifier si le clavier est verrouillé
ben suffit de vérifier sur le key down que la keycode est différent de 144, 107 109 110 111 et 13 et compris entre 96 et 105
Ca m'apprendra à ne dire que la moitié de mon problème.
En fait quand on appuie sur le point du pave numérique on a le keycode 46 qui est aussi le code du "suppr".
Comme je veux une action particulère quand on appuie sur le point (remplacer le . par "h"), il faut que je détecte le verrouillage du clavier.
voila, voila
ça se différentie sur le keypres ...
j'ai du mettre un truc sur la fa pour ça ... un code complet sur keydown keypress et keyup ...
je n'ai pas trouvé la faq dont tu fais référence.
Tu peux me dire où elle est ?
pas le temps de chercher alors voici:
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118 <html> <head> <title>Keyboard Events and Codes</title> <style type="text/css"> body { font-family: Arial, sans-serif } h1 { text-align: right } td { text-align: center } </style> <script language="JavaScript" type="text/javascript"> // array of table cell ids var tCells = ["downKey", "pressKey", "upKey", "downChar", "pressChar", "upChar", "keyTarget", "character"]; // clear table cells for each key down event function clearCells() { for (var i = 0; i < tCells.length; i++) { document.getElementById(tCells[i]).innerHTML = "—"; } } // display target node's node name function showTarget(evt) { var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null); if (node) { document.getElementById("keyTarget").innerHTML = node.nodeName; } } // decipher key down codes function showDown(evt) { clearCells(); evt = (evt) ? evt : ((event) ? event : null); if (evt) { document.getElementById("downKey").innerHTML = evt.keyCode; if (evt.charCode) { document.getElementById("downChar").innerHTML = evt.charCode; } showTarget(evt); } } // decipher key press codes function showPress(evt) { evt = (evt) ? evt : ((event) ? event : null); if (evt) { document.getElementById("pressKey").innerHTML = evt.keyCode; if (evt.charCode) { document.getElementById("pressChar").innerHTML = evt.charCode; } showTarget(evt); var charCode = (evt.charCode) ? evt.charCode : evt.keyCode; // use String method to convert back to character document.getElementById("character").innerHTML = String.fromCharCode(charCode); } } // decipher key up codes function showUp(evt) { evt = (evt) ? evt : ((event) ? event : null); if (evt) { document.getElementById("upKey").innerHTML = evt.keyCode; if (evt.charCode) { document.getElementById("upChar").innerHTML = evt.charCode; } showTarget(evt); } } // set page-wide event listeners document.onkeydown = showDown; document.onkeypress = showPress; document.onkeyup = showUp; </script> </head> <body> <h1>Key and Character Codes vs. Event Types</h1> <hr> <p>Enter some text with uppercase and lowercase letters:<br> </p> <form> <input type="text" id="entry" size="60" onkeydown="showDown(event)" onkeypress="showPress(event)" onkeyup="showUp(event)"> </form> <table border="2" cellpadding="5" cellspacing="5"> <caption>Keyboard Event Properties</caption> <tr> <th>Data</th> <th>keydown</th> <th>keypress</th> <th>keyup</th> </tr> <tr> <td>keyCode</td> <td id="downKey"></td> <td id="pressKey"></td> <td id="upKey"></td> </tr> <tr> <td>charCode</td> <td id="downChar"></td> <td id="pressChar"></td> <td id="upChar"></td> </tr> <tr> <td>Target</td> <td id="keyTarget" colspan="3"></td> </tr> <tr> <td>Character</td> <td id="character" colspan="3"></td> </tr> </table> </body> </html>
OK merci.
Pour ceux qui ne veulent pas chercher :
apparemment quand on tape sur une touche on a le code de la touche (keycode) et le code du caractere correspondant (charcode).
pour mon problème :
pour que le point soit considéré comme tel il fallait :
ça a l'air de marcher sous FireFoxCode:
1
2
3
4
5
6 var keyCode = evt.which ? evt.which : evt.keyCode; if(evt.charCode&&keyCode ==46) { ... }