Créer touches de raccourcis compatibles internet explorer et netscape

Contenu du snippet

Voici une jolie petite source qui permet de programmer des touches de raccourci 100% compatible sous Internet Explorer et sous Netscape, si vous rencontrez des bugs, faites moi signe ;-)

Source / Exemple :


// SCRIPT GESTION DES TOUCHES ------------------------------------------------------
// (A mettre dans un fichier .js)
// Par OLYMAT - www.olymat.tk
//
// On supposera que vous programmez en PHP, pour ceux qui font de l'ASP,
// bien vouloir trouvez les fonctions équivalentes

var touches = new Array();
var ntouches = 0;

function est_enfonce(t) {
	for (i=1; i<=ntouches; i++) {
		if (touches[i]==t) return true;
	}
	return false;
}

function affiche_touche() {
	txt = "";
	for (i=1; i<=ntouches; i++) {
		txt=txt+" - "+touches[i];
	}
	window.status=txt; 
}

function ajoute_touche(t){
	for (i=1; i<=ntouches; i++) {
		if (touches[i]==t) return 0;
	}
	
	ntouches++;
	touches[ntouches]=t;
	return 1;
}

function retire_touche(t){
	for (i=1; i<=ntouches; i++) {
		if (touches[i]==t) {
			for (j=i+1; j<=ntouches; j++) {
				touches[j-1]=touches[j];
			}
			ntouches--;
			return 1;
		}
	}
	
	return 0;	
}

//------------------------------------------------------

function uneTouche(evenement)
{  
  if (window.Event) var c = evenement.keyCode;
  else var c = event.keyCode;  
  ajoute_touche(c);
  //alert(c);
  eval("code_touche_general();");
  eval("code_touche_page();");
}

function uneAutreTouche(evenement)
{  
  if (window.Event) var c = evenement.keyCode;
  else var c = event.keyCode;
  retire_touche(c);
}

document.onkeydown = uneTouche;
document.onkeyup = uneAutreTouche;

//------------------------------------------------------
// FIN SCRIPT GESTION DES TOUCHES
// Par OLYMAT - www.olymat.tk

//------------------------------------------------------
//------------------------------------------------------
//------------------------------------------------------

// à mettre dans la page qui appelle les autres à l'aide
// de la fonction include
// Exemple : include ("sous_page.php");

function code_touche_general() {
	if (est_enfonce(17) && est_enfonce(18) && est_enfonce(65)) {  // ctrl + alt + a
		document.location="quelquepart.php";
	}
}

//------------------------------------------------------
//------------------------------------------------------
//------------------------------------------------------

// à mettre dans les sous pages (celle qui sont appelées
// à l'aide de la fonction include)

function code_touche_page(){
	if (est_enfonce(17) && est_enfonce(18) && est_enfonce(72)) {  // ctrl + alt + h
		// action 1
	}
	
	if (est_enfonce(17) && est_enfonce(18) && est_enfonce(69)) {  // ctrl + alt + e
		// action 2
	}	
	
	if (est_enfonce(17) && est_enfonce(18) && est_enfonce(70)) {  // ctrl + alt + f
		// action 3
	}	
	
	if (est_enfonce(17) && est_enfonce(18) && est_enfonce(84)) {  // ctrl + alt + t
		// action 4		
	}
}

Conclusion :


Faites en bon usage, et si vous êtes satisfait, un petit mot d'encouragement serait le bien venu à l'adresse olymat@programmer.net

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.