L'éditeur JavaScript
Visiteur non-identifié | Identifiez-vous | Devenir membre
Code perdu ? | Combien de visiteurs sur votre site ?
Rechercher :
Page d'accueil
     Home Page

JavaScript
     Tous les scripts
     Proposer un script
     Recherche de script
     AJAX
     Cours de JavaScript
     Liste de discussion
     Forums

Services :
     CountUs
     myCircle
     ClickInText
     XooIt

Trucs et astuces :
     HTML / CSS
     PHP / MySQL
     Réferencement
     Graph / Présentation
     Toutes les astuces
     Ajouter un article

MailingList :
122626 abonnés

Annuaire webmaster :      Hebergement web
     Referencement
     Sites webmasters
     XHTML - CSS2
     PHP
     Affiliation - Pub
     FAI

     Annuaire webmaster

Ressources pour webmasters :
     Kit graphique
     Foire aux questions
     Les membres
     Devenir annonceur
     Faire un lien
     Contact

Partenaire :
     Compteur live
     Créer un forum
     Le PHP facile
     Comscripts
     Liens sponsorisés
     Blog
     Page Rank
     Gifs animés, f...
     Poésie et cita...
     Azote.org - no...
     Easy-script.com
     Web creation ...
     Je crée mon site
     Outils de créa...
     Electroniq...
     K i s s design
     Créer son site...
     Les autres
     Votre site ici ?


Le forum ] [ Préférences ] [ Nouveau sujet ] [ Répondre ] [ Recherche ] [ Vos sujets ] [ Tous lus ] [ Flux RSS ]


> DOM et Javascript
[ Posté par spigaou13 ] [ Détails ] [ Contact ] [ Citer ]
[ Posté le 15-02-2010 à 11:54 | 1 messages ]

Bonjour,

Je dois faire le jeu du plus ou moins avec Javascript.
Générer un nombre entre 0 et10, on le devine, on récupère le nombre de coups, le temps mis pour trouver le chiffre (en secondes) et le nom du joueur.

J'ai un tableau d'objet de 10 places dans lequel je dois ranger les 10 meilleurs joueurs classés par le temps.
Tout marche bien mais je n'arrive pas à classer et à ranger mes temps dans le tableau html, c'est à dire qu'à chaque fois qu'un joueur est dans le top 10, on doit décaler les autres joueurs dont le temps est supérieur et insérer celui ci.

Voici mon code:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3c.org/TR/html4/strict.dtd">

<html>

<head>
<title>Mes premiers pas en Javascript : DOM et Javascript jeu du plus ou moins</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf8">

<style type = "text/css">
h2{
color:#000080;
text-align:center;
}
body{
background-color: #778899;
}
p{
color:#000080;
}
</style>

<script type="text/javascript">

tab = new Array(10);

function init()
{
for(var i=0;i<tab.length;i++){
tab[i] = new Object();
tab[i].Nom="....";
tab[i].Temps=1000;
tab[i].Nombre=1000; }
}


function aleatoire()
{
x = Math.floor(Math.random()*10); //Donne un nb entier aleatoire entre 1 et 10
alert("X="+x); //Affiche le nombre à deviner
cpt = 1; //compteur de coups
var t1,t2;
t1 = new Date;

do{
nbchaine=prompt("Donnez un nombre entier compris entre 1 et 10 ou stop pour terminer");
if (nbchaine == "stop") return; //Si on rentre "stop" la fonction s'arrête
nombre = parseInt(nbchaine); //Convertit la chaine en nombre

if(nombre > x){ //Si le nombre saisi est supérieur au nombre cherché x
cpt++;
alert("Raté, c'est plus petit !");

}else{
if(nombre < x) {
cpt++;
alert("raté, c'est plus grand !"); }
}

if(nombre == x){
t2 = new Date;
alert("Bravo, vous avez trouvé ! Nombre de coups : "+cpt);
var temps=Math.floor(((t2.getTime()-t1.getTime())/1000)); //Donne le temps ecoule entre t1 et t2
alert("Temps écoulé en secondes :"+temps);
nom=prompt("Votre nom :");
}



} while (nombre != x);

for(var i=0;(i<=tab.length)&&(temps>tab[i].Temps);i++);

if (temps>tab[9].Temps)
{
alert("Désolé, pas dans le top 10 !");
}
else // inserer temps dans le top 10 a la position i
{
for(i=0;temps>tab[i].Temps && i<tab.length;i++);
for(j=9;j>i-1;j--)
tab[j]=tab[j-1];

tab[i-1].Temps=temps;
tab[i-1].Nom=nom;
tab[i-1].Nombre=cpt;

for(i=1;i<=10;i++){
var monid="temps"+i;
var monid1="nom"+i;
var monid2="nombre"+i;
noeud=document.getElementById(monid);
noeud.innerHTML=""+tab[i-1].Temps;
noeud1=document.getElementById(monid1);
noeud1.innerHTML=""+tab[i-1].Nom;
noeud2=document.getElementById(monid2);
noeud2.innerHTML=""+tab[i-1].Nombre;
}
}
}
</script>
</head>

<body onload="init()">

<h2> Bienvenue au "JEU DU PLUS OU MOINS" </h2><br/>
<p>Veuillez cliquer sur le bouton pour lancer le jeu : <button onclick="aleatoire()">Jouer !</button></p><br/>

<table summary="Tableau des joueurs" border=15px width=35% bgcolor=grey>
<caption align=bottom>Tableau des meilleurs joueurs</caption>
<thead> <!--Description des colonnes-->
<tr>
<th id="id1">Rang</th>
<th id="id2">Nom</th>

<th id="id3">Nombre</th>
<th id="id4">Temps</th>
</tr>
</thead>
<tbody>
<tr> <!--Remplissage des lignes-->
<td id="rang1">1</td>
<td id="nom1"> </td>
<td id="nombre1"> </td>
<td id="temps1"> </td>

</tr>
<tr>
<td id="rang2">2</td>
<td id="nom2"> </td>
<td id="nombre2"> </td>
<td id="temps2"> </td>
</tr>
<tr>
<td id="rang3">3</td>
<td id="nom3"> </td>
<td id="nombre3"> </td>

<td id="temps3"> </td>
</tr>
<tr>
<td id="rang4">4</td>
<td id="nom4"> </td>
<td id="nombre4"> </td>
<td id="temps4"> </td>
</tr>
<tr>
<td id="rang5">5</td>
<td id="nom5"> </td>

<td id="nombre5"> </td>
<td id="temps5"> </td>
</tr>
<tr>
<td id="rang6">6</td>
<td id="nom6"> </td>
<td id="nombre6"> </td>
<td id="temps6"> </td>
</tr>
<tr>
<td id="rang7">7</td>

<td id="nom7"> </td>
<td id="nombre7"> </td>
<td id="temps7"> </td>
</tr>
<tr>
<td id="rang8">8</td>
<td id="nom8"> </td>
<td id="nombre8"> </td>
<td id="temps8"> </td>
</tr>

<tr>
<td id="rang9">9</td>
<td id="nom9"> </td>
<td id="nombre9"> </td>
<td id="temps9"> </td>
</tr>
<tr>
<td id="rang10">10</td>
<td id="nom10"> </td>
<td id="nombre10"> </td>

<td id="temps10"> </td>
</tr>
</tbody>
</table>

</body>

</html>


Je pense que le problème se situe au niveau du else où il y a le commentaire //insérer le temps à la position i, mais je ne sais pas comment le résoudre, merci.






Services email :

Vous devez vous identifier pour profiter des services par email du forum.
Le forum ] [ Préférences ] [ Nouveau sujet ] [ Répondre ] [ Recherche ] [ Vos sujets ] [ Tous lus ] [ Flux RSS ]






compteur gratuit
actuellement en ligne

    PUBLICITE



     ANNUAIRE WEBMAST.
Club-Internet
Mon FAI preferé :) Mélange de serieux et des prix attractifs.
http://rejoignez.club-int...
Cat : Haut débit
Voir l'annuaire webmaster


     LES SCRIPTS :
78 à éditer
68 à copier/coller
247 des membres
2580 sur le web
>> Tous les scripts

     LES MEMBRES :
65980 membres
4655 comptes CountUs
1842 comptes myCircle

     LES FORUMS :
14 forums
40362 topics
191691 messages
>> Les forums

    SONDAGE

Vous avez un blog ou site classique ?
Un blog
Un site classique
Les deux !
La mini-astuce "Divers" du jour par mirage
Simplifiez-vous les forums : http://update.mozilla.org/extensions/moreinfo.php?id=128&vid=196&category=Miscellaneous ! Avec ce petit menu ajouté à vos options du clic droit, vous avez toutes les balises BBCode ! Très pratique pour le forum de l'EJS ;)
Proposer votre mini-astuce | Archives des mini-astuces
© 1999-2012 EJS - Tous droits réservés | CNIL N° 844440 | 13/02/2012 01:58:47 | Design by | Gen. en 0.487 sec.