Script Javascript : Reconnaissance d'un touch

Résolu/Fermé
Ralsalerm - 4 août 2009 à 13:35
kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 - 5 août 2009 à 13:16
Bonjour,
J'ai besoin de votre aide pour un script javascript.

En fait, j'aimerai faire un script qui réagis lorsque l'on appui sur une touche. Par exemple, lorsque l'on appui sur la flèche Haut, ben une image apparait etc ...

Si jamais vous avez un script qui correspond, merci de bien vouloir me le faire parvenir ici même ( Cela permettra aux autres d'avoir la solution a leurs problèmes plutôt que de refaire un sujet ).

Je vous remercie d'avance, et je vous ferai parvenir mon petit projet une fois terminé :D
A voir également:

5 réponses

imw Messages postés 233 Date d'inscription vendredi 17 juillet 2009 Statut Membre Dernière intervention 8 septembre 2011 42
4 août 2009 à 14:59
il faut utiliser l'événement onkeypress.

Tu peux l'appliquer sur document dans ton javascript :

document.onkeypress = KeyPress;

function KeyPress( event )
{
	
    alert( window.event.keyCode ); // pour IE
    alert( event.keyCode ); // pour les autres
}

Attention, le KeyCode, ce n'est pas la lettre, mais le numéro de la touche appuyée
Après, tu en fait ce que tu veux
1
Et quel sont ces fameux numéros ?
0
imw Messages postés 233 Date d'inscription vendredi 17 juillet 2009 Statut Membre Dernière intervention 8 septembre 2011 42
4 août 2009 à 15:22
avec le code que je t'ai donné, appuie sur une touche, il te donnera le numéro ...
0
kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
4 août 2009 à 17:52
Bonsoir,

Un exemple complet, avec la liste des valeurs pour les touches les plus utilisées:

Fichier 'keyboard.js':

KEY_DOWN	= 40;
KEY_UP		= 38;
KEY_LEFT	= 37;
KEY_RIGHT	= 39;

KEY_END		= 35;
KEY_BEGIN	= 36;

KEY_BACK_TAB 	= 8;
KEY_TAB				= 9;
KEY_SH_TAB  	= 16;
KEY_ENTER			= 13;
KEY_ESC				= 27;
KEY_SPACE			= 32;
KEY_DEL				= 46;

KEY_A		= 65;
KEY_B		= 66;
KEY_C		= 67;
KEY_D		= 68;
KEY_E		= 69;
KEY_F		= 70;
KEY_G		= 71;
KEY_H		= 72;
KEY_I		= 73;
KEY_J		= 74;
KEY_K		= 75;
KEY_L		= 76;
KEY_M		= 77;
KEY_N		= 78;
KEY_O		= 79;
KEY_P		= 80;
KEY_Q		= 81;
KEY_R		= 82;
KEY_S		= 83;
KEY_T		= 84;
KEY_U		= 85;
KEY_V		= 86;
KEY_W		= 87;
KEY_X		= 88;
KEY_Y		= 89;
KEY_Z		= 90;

KEY_PF1		= 112;
KEY_PF2		= 113;
KEY_PF3		= 114;
KEY_PF4		= 115;
KEY_PF5		= 116;
KEY_PF6		= 117;
KEY_PF7		= 118;
KEY_PF8		= 119;

REMAP_KEY_T	= 5019;

function upEventKeyCode (_event_, _value_){
	if ( window.event)
		window.event.keyCode = _value_;
	else
		_event_.keyCode = _value_;
}
	
function upRetValue (_event_, _value_){
	if ( window.event)
		window.event.returnValue = _value_;
	else
		_event_.returnValue = _value_;
}
	
function applyKey (_event_){
	
	var intKeyCode = null;
	var intAltKey = null;
	var intCtrlKey = null;
	
	if ( window.event ){
		intKeyCode = window.event.keyCode;
		intAltKey = window.event.altKey;
		intCtrlKey = window.event.ctrlKey;
	}
	else{
		intKeyCode = _event_.keyCode;
		intAltKey = _event_.altKey;
		intCtrlKey = _event_.ctrlKey;
	}
		
	// --- Access with [ALT/CTRL+Key]
	if (intAltKey || intCtrlKey) {
		
		if ( intKeyCode == KEY_RIGHT || intKeyCode == KEY_LEFT ){
			// --- Display Message
			alert("Hello with ALT/CTRL !");
			// --- Map the keyCode in another keyCode not used
			intKeyCode = REMAP_KEY_T;
			upEventKeyCode(REMAP_KEY_T);
			upRetValue(false);
			return false;
		}
		
	}
	// --- Access without [ALT/CTRL+Key]
	else {
		
		if ( intKeyCode == KEY_RIGHT || intKeyCode == KEY_LEFT ){
			// --- Display Message
			alert("Hello !");
			// --- Map the keyCode in another keyCode not used
			intKeyCode = REMAP_KEY_T;
			upEventKeyCode(REMAP_KEY_T);
			upRetValue(false);
			return false;
		}
		
	}
	
}



Fichier 'index.html':
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript" 	SRC="keyboard.js"></SCRIPT>
</HEAD>

<BODY>

<script language="javascript">
document.onkeydown = applyKey;
</script>

</BODY>
</HTML>


Testé et approuvé, il ne devrait pas y avoir de raison pour que cela ne fonctionne pas.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
5 août 2009 à 13:16
Bonjour,

Juste pour information, une astuce a été créée pour ce sujet :
https://www.commentcamarche.net/faq/18760-javascript-manipulation-des-controles-clavier

Bonne journée.
0