Bonjour,
Je cr�e actuellement un petit bout de code qui est cens� red�finir des raccourcis clavier.
J'ai notamment une page o� quand je fais ctrl + m, cela m'activer un bouton "modification", quand je fais ctrl + n, j'active un autre bouton, etc ...
Tout fonctionne tr�s bien. Exemple, j'ai une action sur ctrl + F, firefox ne m'ouvre pas la recherche et r�alise bien l'action que je demande derri�re.
Cependant j'ai remarqu� une anomalie. C'est que d�s que cette action r�alise une ouverture de fen�tre (open popup, ou une simple fen�tre "alert" ou "confirm") mon action est ex�cut� mais aussi celle par d�faut du navigateur (seulement sous firefox) !
Exemple : ctrl + S est cens� m'activer une action de suppression, ce qu'il fait bien, mais avant cela j'affiche une alert pour confirmer la suppression, et � cause de cette alert, la fen�tre de "sauvegarder sous..." s'ouvre �galement !!
Si j'enl�ve cette alert, aucun probl�me ! Et sous IE le code fonctionne correctement.
Voici mon code qui bloque et capture les touches :
Ce comportement est il normal ? ai je fait une erreur dans mon code ? Merci beaucoup d'avance !
Code : S�lectionner tout - Visualiser dans une fen�tre � part
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 <SCRIPT language=javascript> function __getKeyCode(e){ var intKey = 0; if (e.keyCode) { intKey = e.keyCode; } else { if (e.which) { intKey = e.which; } } return intKey; } function stopEvent(e) { if (e.preventDefault) { e.preventDefault(); e.stopPropagation(); } else { e.returnValue = false; e.cancelBubble = true; e.keyCode = 0; } return false; } function ControlKeyDown(e) { if (!e) { var e = window.event; } var iTouche = __getKeyCode(e); if (((iTouche >= 65 && iTouche <= 90) || (iTouche >= 97 && iTouche <= 122)) && e.ctrlKey) { stopEvent(e); alert('coucou !!'); } } document.onkeydown = ControlKeyDown; </SCRIPT>![]()
Partager