On veut créer une page html contenant les illustrations des membres d’une des familles du jeu des 7 familles proposé par l’INRIA :
https://interstices.info/dossier/7-familles-de-linformatique/
Une ressource utile :
https://developer.mozilla.org/fr/docs/Learn/JavaScript/Building_blocks/Eventslocks/Events
Etape 1
Créer une page html proposant les illustrations des membres d’une famille de l’informatique de votre choix.
Etape 2
On désire à présent ajouter un peu d’interactivité à notre page. Pour cela, l’utilisateur doit cliquer sur l’illustration correspondant à l’un des personnages affichés que l’on a choisi.
Un message dans le html doit alors indiquer à l’utilisateur si il a fait le bon choix.
Etape 3
Mettre en place un tirage aléatoire sur le nom de la personne à trouver.
Correction Version 1
le html
<!DOCTYPE html>
<html lang="fr"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="style.css">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Bowlby+One&display=swap" rel="stylesheet">
<title>Jeu des 7 familles</title>
</head>
<body>
<div id="plateau">
<img src="images/Alan Kay.png" onclick="clique('Alan Kay')">
<img src="images/Doug Engelbart.png" onclick="clique('Doug Engelbart')">
<img src="images/Jean-Marie Hullot.png" onclick="clique('Jean-Marie Hullot')">
<img src="images/Joëlle Coutaz.png" onclick="clique('Joëlle Coutaz')">
<img src="images/Marie-Paule Cani.png" onclick="clique('Marie-Paule Cani')">
<img src="images/Ted Nelson.png" onclick="clique('Ted Nelson')">
<h1 id="texte">Cliquer sur Ted Nelson</h1>
</div>
</body>
<script src="script.js"></script>
</html>
le css
#plateau {
width: 33%;
margin-left: 33%;
margin-top:50px;
}
h1 {
color: #FF5733;
font-size: 30px;
width: 50%;
margin-left: 25%;
font-family: "Bowlby One", sans-serif;
font-weight: 400;
font-style: normal;
}
img {
width: 30%;
}
le js
var reponse="Ted Nelson";
var texte=document.getElementById("texte");
function clique(nom){
if (nom==reponse){
texte.textContent="Bravo, vous avez cliqué sur "+reponse;
}
else {
texte.textContent="Désolé, vous avez cliqué sur "+nom+".Il faut cliquer sur "+reponse;
}
}
Version 2
le html
<!DOCTYPE html>
<html lang="fr"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="style.css">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Bowlby+One&display=swap" rel="stylesheet">
<title>Jeu des 7 familles</title>
</head>
<body>
<div id="plateau">
<img id="Alan Kay" src="images/Alan Kay.png">
<img id="Doug Engelbart" src="images/Doug Engelbart.png">
<img id="Jean-Marie Hullot" src="images/Jean-Marie Hullot.png">
<img id="Joëlle Coutaz" src="images/Joëlle Coutaz.png">
<img id="Marie-Paule Cani" src="images/Marie-Paule Cani.png">
<img id="Ted Nelson" src="images/Ted Nelson.png">
<h1 id="texte">Cliquer sur Ted Nelson</h1>
</div>
</body>
<script src="script.js"></script>
</html>
le js
var reponse="Ted Nelson";
var texte=document.getElementById("texte");
var mes_images=document.getElementsByTagName("img");
for (var i=0;i<6;i++){
var mon_image=mes_images[i];
mon_image.addEventListener("mousedown",verif,false);
}
function verif(evt){
if (this.id==reponse){
texte.textContent="Bravo";
}
else {
texte.textContent="Désolé, vous avez cliqué sur "+this.id+".Il faut cliquer sur "+reponse;
}
}
Version 3 sans id dans le html
<!DOCTYPE html>
<html lang="fr"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="style.css">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Bowlby+One&display=swap" rel="stylesheet">
<title>Jeu des 7 familles</title>
</head>
<body>
<div id="plateau">
<img src="images/Alan Kay.png">
<img src="images/Doug Engelbart.png">
<img src="images/Jean-Marie Hullot.png">
<img src="images/Joëlle Coutaz.png">
<img src="images/Marie-Paule Cani.png">
<img src="images/Ted Nelson.png">
<h1 id="texte">Cliquer sur Ted Nelson</h1>
</div>
</body>
<script src="script.js"></script>
</html>
le js
var reponse="Ted Nelson";
var texte=document.getElementById("texte");
var mes_images=document.getElementsByTagName("img");
for (var i=0;i<6;i++){
var mon_image=mes_images[i];
mon_image.addEventListener("mousedown",verif,false);
}
function verif(evt){
nom_image=this.getAttribute("src").slice(7,-4);
if (nom_image==reponse){
texte.textContent="Bravo";
}
else {
texte.textContent="Désolé, vous avez cliqué sur "+nom_image+".Il faut cliquer sur "+reponse;
}
}