Script compatible Mozilla

rallierst Messages postés 31 Date d'inscription dimanche 27 octobre 2002 Statut Membre Dernière intervention 29 octobre 2008 - 23 sept. 2004 à 10:14
chimelpremier Messages postés 544 Date d'inscription vendredi 5 décembre 2003 Statut Membre Dernière intervention 20 mai 2005 - 24 sept. 2004 à 13:14
Bonjour,
Je cherche à rendre compatible ce script pour le navigateur Moziila. Il fonctionne très bien sous IE, mais pas sous Mozilla.
Merci à l'avance pour votre aide.

<script language="JavaScript" type="Text/JavaScript">
<!--
var lienval=new Array(
"images/pays/france2.jpg",
"images/pays/Anglais2.jpg"
); //========== table des images pour les liens valides
var lieninv=new Array(
"images/pays/france.jpg",
"images/pays/Anglais.jpg"
); //========== table des images pour les liens invalides
for (var n=0;n<lien.length;n++)
{ img[n].src=lieninv[n]; } // initialisation des images
var adr=lien.length-1;
function clavier() // frappe sur une touche
{ if (event.keyCode==13) lien[adr].click(); }
function suivant() // passer au lien suivant
{ img[adr].src=lieninv[adr];
adr++;
if (adr>=lien.length) adr=0;
img[adr].src=lienval[adr];
setTimeout("suivant();",3000); }
suivant();
document.onkeypress=clavier;
//-->
</script>

4 réponses

zegnoo Messages postés 19 Date d'inscription dimanche 8 août 2004 Statut Membre Dernière intervention 27 mars 2006
23 sept. 2004 à 10:39
salut,
pour mozilla l'évènement est passé en paramêtre à la fonction qu'il appelle :

document.onkeydown = getKey;

function getKey(evt)
{
alert(evt.keyCode);
}
0
rallierst Messages postés 31 Date d'inscription dimanche 27 octobre 2002 Statut Membre Dernière intervention 29 octobre 2008
23 sept. 2004 à 11:12
Je te remercie pour ton aide. Par contre je ne sais pas où insérer les modifications du code pour qu'il fonctionne sur les deux navigateurs.
Je suis désolé, de te faire perdre ton temps, mais si tu pouvais m'aider à modifier celui-ci cela serait super.
Merci à l'avance.
0
chimelpremier Messages postés 544 Date d'inscription vendredi 5 décembre 2003 Statut Membre Dernière intervention 20 mai 2005
24 sept. 2004 à 13:03
C'est la fonction clavier() qu'il faut modifier :
- Chez Gecko c'est e.which qui récupère le code de la touche frappée.
- Gecko reconnait window.Event et IE : window.event
- e est l'évènement passé en paramètre .
voici la fonction passe-partout :

function clavier(e){ // frappe sur une touche
var codeTouche=window.Event?e.which:event.keyCode
if (codeTouche==13) lien[adr].click(); }
0
chimelpremier Messages postés 544 Date d'inscription vendredi 5 décembre 2003 Statut Membre Dernière intervention 20 mai 2005
24 sept. 2004 à 13:14
J'ai vu aussi une autre érreur :

for (var n=0;n<lien.length;n++)

lien n'a pas été défini auparavant ?
0
Rejoignez-nous