Alterner des images onclick
Bonjour tout le monde je vous souhaite une excellente année 2012.
Je viens de réaliser une petite application qui se voudrait pédagogique mais...
Le principe est simple : quand on clique dans une case on affiche une croix pleine si on clique à nouveau on revient à l'état initial.
Si on est pas trop exigeant on dira que cela fonctionne hors pour changer d'image on doit parfois cliquer plusieurs fois (notament quand on change de case) et cela ne me satisfait pas. Je ne m'explique pas ces "ratés de clic".
Voici l'application en ligne :
http://ericmaynadier.free.fr/coche/
Voici le code :
Code:
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
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Document sans nom</title>
<link href="lesstyles.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
clic=0;
function coche(id)
{
if (clic==0)
{
clic=1;
document.getElementById(id).src="croix.png";
}
else
{
clic=0;
document.getElementById(id).src="vide.png";
}
}
</script>
</head>
<body>
<table>
<tr>
<td><img id="case1" src="vide.png" onclick="coche(id)" alt="case"></td>
<td><img id="case2" src="vide.png" onclick="coche(id)" alt="case"/></td>
<td><img id="case3" src="vide.png" onclick="coche(id)" alt="case"/></td>
</tr>
<tr>
<td><img id="case4" src="vide.png" onclick="coche(id)" alt="case"/></td>
<td><img id="case5" src="vide.png" onclick="coche(id)" alt="case"/></td>
<td><img id="case6" src="vide.png" onclick="coche(id)" alt="case"/></td>
</tr>
</table>
</body>
</html> |
Merci pour vos réponses et bonne journée
Eric
Retour état initial impossible
Merci pour ta réponse Space Frog. Ton code est bien plus académique que le mien mais il ne permet pas de revenir à l'état initial en cas de nouveau clic (un bug dans la condition ternaire certainement...).J'obtenais le même résultat sans le else de ma condition et c'est vrai que le code se déroulait sans heurt. Je continue à chercher...:lol: