Éviter la redondance entre les pages

Fermé
Signaler
Messages postés
1
Date d'inscription
vendredi 29 mars 2013
Statut
Membre
Dernière intervention
29 mars 2013
-
Messages postés
5358
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
-
J'ai fait plusieurs fichier javascript pour aller avec chacune de mes pages mais c'est les mêmes codes partout exemple :

function configurer()
{
document.getElementById("btn_anglais").onclick=montrerAnglaisEspagnol;
document.getElementById("btn_espagnol").onclick=montrerAnglaisEspagnol;


}



function faireMontrerAnglaisEspagnol(demande)
{
switch(demande)
{
case "btn_anglais":document.getElementById("anglais_f").style.display="block";
document.getElementById("anglaisf").play();
break;

case "btn_espagnol":document.getElementById("espagnol_f").style.display="block";
document.getElementById("espagnolf").play();
break;

}
}

function montrerAnglaisEspagnol()
{
faireMontrerAnglaisEspagnol(this.id);
}


mais si j'ajoute d'autres éléments en changeant le nom de l'id. Y plante. Je veux éviter la redondance et qu'il y ait un peu trop de fichiers javascript qui ont le même code.

1 réponse

Messages postés
5358
Date d'inscription
dimanche 3 février 2008
Statut
Membre
Dernière intervention
13 février 2017
895
on doit pouvoir faire beaucoup plus simple

<script type="text/javascript">
//il suffit d'une seule petite fonction qui recoit des arguments depuis l'appel par le bouton
function configurer(id_div,id_play)
{
document.getElementById(id_div).style.display="block";
document.getElementById(id_play).play();
}

</script>

<body>
<input type="button" name="btn_anglais" id="btn_anglais"  value="Anglais" onclick="configurer('anglais_f','anglaisf');" />
<input type="button" name="btn_espagnol" id="btn_espagnol"  value="Espagnol" onclick="configurer('espagnol_f','espagnolf');" />


par contre quand on clique sur un des boutons il doit aussi falloir cacher les div éventuellement ouvert avant ?