IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

message quand tableau tri�


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm�
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    63
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 63
    Par d�faut message quand tableau tri�
    Bonsoir,

    dans la fonction ci dessous, je souhaite ouvrir une fen�tre de message et r�initialiser la partie d�s que le tableau est tri�.
    Pourtant �a ne fonctionne p�...
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    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
    42
    43
    44
    45
    	function clickOnMouton(idOfClickedCell)
    	{
    		alert("this is " + idOfClickedCell + ", with status: " + tabOfMoutons[idOfClickedCell]);
    		var idArrivee = idOfClickedCell;
     
    		if(tabOfMoutons[idOfClickedCell + 1] == 0 && tabOfMoutons[idOfClickedCell] == 1)
    		{
    			idArrivee = idOfClickedCell + 1;
    			tabOfMoutons[idOfClickedCell] = 0;
    			tabOfMoutons[idArrivee] = 1;
    		}
     
    		else if(tabOfMoutons[idOfClickedCell + 2] == 0 && tabOfMoutons[idOfClickedCell] == 1)
    		{
    			idArrivee = idOfClickedCell + 2;
    			tabOfMoutons[idOfClickedCell] = 0;
    			tabOfMoutons[idArrivee] = 1;
    		}
    		else
    		{
    			if(tabOfMoutons[idOfClickedCell - 1] == 0 && tabOfMoutons[idOfClickedCell] == 2)
    			{
    				idArrivee = idOfClickedCell - 1;
    				tabOfMoutons[idOfClickedCell] = 0;
    				tabOfMoutons[idArrivee] = 2;
    			}
     
    			else if(tabOfMoutons[idOfClickedCell - 2] == 0 && tabOfMoutons[idOfClickedCell] == 2)
    			{
    				idArrivee = idOfClickedCell - 2;
    				tabOfMoutons[idOfClickedCell] = 0;
    				tabOfMoutons[idArrivee] = 2;
    			}
    			else
    				alert("Choisissez un mouton en bonne position ");
     
    		}
     
    		drawTable();
    		if (tabOfMoutons == [2,2,2,0,0,0,0,1,1,1])
    		{
    			alert("c'est gagné!!");
    			initializeGame();
    		}	
    	}
    J'ai essay� en faisant une troisi�me boucle imbriqu�e mais c'est pareil...
    Si quelqu'un � une id�e...

    D'ailleurs, peut on cr�er une div automatiquement � ce moment plut�t qu'une bo�te?

  2. #2
    Membre confirm�
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    63
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 63
    Par d�faut
    Bonjour,

    pour la div, je crois savoir comment en jouant sur le style (hidden) mais �a rentre dans le m�me "if" qui confirme que le tableau a bien cette configuration (tri�).
    Je ne comprends pas pourquoi �a ne le prend pas en compte...

  3. #3
    Membre confirm�
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    63
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 63
    Par d�faut
    re bonjour,

    j'ai fait une fonction verifyGame() avec des messages alert mais �a ne dit pas si �a a gagn�...
    Si quelqu'un sait...

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    	<script type="text/javascript">
     
    	var tabOfMoutons = new Array();
    	 //var idOfCurrentlySelectedMouton = -1; (inutilisé ici)
     
    	function initializeGame()
    	{
    		tabOfMoutons = [0,1,1,1,0,0,2,2,2,0];
    		drawTable();
    	}
     
    	function verifyGame()
    	{
    	var cGagne = false;
    		if(tabOfMoutons == [2,2,2,0,0,0,0,1,1,1])
    		{
    			cGagne = true;
    			alert("c'est gagné!!");
    			initializeGame();	
    		}
    		else
    		{
    		alert("A vous de jouer");
    		cGagne = false;
    		}
    	}
     
     
     
    	function clickOnMouton(idOfClickedCell)
    	{
    		alert("this is " + idOfClickedCell + ", with status: " + tabOfMoutons[idOfClickedCell]);
    		var idArrivee = idOfClickedCell;
     
    		if(tabOfMoutons[idOfClickedCell + 1] == 0 && tabOfMoutons[idOfClickedCell] == 1)
    		{
    			idArrivee = idOfClickedCell + 1;
    			tabOfMoutons[idOfClickedCell] = 0;
    			tabOfMoutons[idArrivee] = 1;
    		}
     
    		else if(tabOfMoutons[idOfClickedCell + 2] == 0 && tabOfMoutons[idOfClickedCell] == 1)
    		{
    			idArrivee = idOfClickedCell + 2;
    			tabOfMoutons[idOfClickedCell] = 0;
    			tabOfMoutons[idArrivee] = 1;
    		}
    		else
    		{
    			if(tabOfMoutons[idOfClickedCell - 1] == 0 && tabOfMoutons[idOfClickedCell] == 2)
    			{
    				idArrivee = idOfClickedCell - 1;
    				tabOfMoutons[idOfClickedCell] = 0;
    				tabOfMoutons[idArrivee] = 2;
    			}
     
    			else if(tabOfMoutons[idOfClickedCell - 2] == 0 && tabOfMoutons[idOfClickedCell] == 2)
    			{
    				idArrivee = idOfClickedCell - 2;
    				tabOfMoutons[idOfClickedCell] = 0;
    				tabOfMoutons[idArrivee] = 2;
    			}
    			else
    				alert("Choisissez un mouton en bonne position ");
     
    		}
    		/*if (tabOfMoutons == [2,2,2,0,0,0,0,1,1,1])
    		{
    			alert("c'est gagné!!");
    			initializeGame();
    		}*/	
    		drawTable();
     
    	}	
     
     
    	function drawTable()
    	{
    		verifyGame(); 
    		/*teste avant de lancer la fonction si le tableau est rangé 
    		alert("a vous de jouer") fonctionne
    		alert("c'est gagné") fonctionne pas*/
     
    		var tableContentString = "<tr>";
    		for(var i=0; i<tabOfMoutons.length; i++)
    		{
    			if (tabOfMoutons[i] == 1)
    				tableContentString += "<td onclick='clickOnMouton(" + i + ");'><img src='mouton1.png' onmouseover=src='mouton12.png' onmouseout=src='mouton1.png' alt='' witdth=6em id='m1'/>";
     
    			else if (tabOfMoutons[i] == 2)
    				tableContentString += "<td onclick='clickOnMouton(" + i + ");'><img src='mouton2.png' onmouseover=src='mouton22.png' onmouseout=src='mouton2.png' alt='' witdth=6em id='m2'/>";
     
    			else 
    				tableContentString += "<td onclick='clickOnMouton(" + i + ");'><img src='' witdth=6em id='m0'/>"; 
     
    			tableContentString += "</td>";	
    		}
     
    		tableContentString += "</tr>";
     
    		var tableElement = document.getElementById('moutonTable');
    		tableElement.innerHTML = tableContentString;
    	}
     
     
     
    	</script>

  4. #4
    Membre exp�riment� Avatar de John Blobsmith
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    198
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 198
    Par d�faut
    Si l'alert n'est pas execut� c'est soit qu'il y a une erreur javascript, soit que ton test n'est pas bon. Quant je vois ton test je me demande comment �a peut marcher.

    Dans beaucoup de langages, quant tu compare 2 tableaux de la sorte, le syst�me va comparer l'adressage du tableau et non le contenu.

  5. #5
    Mod�rateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par d�faut
    Bonjour,
    pour t'en convaincre testes
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    var tab =  [2,2,2,0,0,0,0,1,1,1];
    alert( tab == [2,2,2,0,0,0,0,1,1,1]);

  6. #6
    Membre confirm�
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    63
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 63
    Par d�faut
    Bonjoir,

    Merci de vos r�ponses.
    Voil� donc une solution qui marche mais qui ne me pla�t pas trop.
    Si quelqu'un � une id�e plus "pro" je suis preneur, moi je d�bute tout juste.
    J'aurai bien voulu une fonction avec un "return" pour faire joli.
    (Apr�s tout c'est no�l, je peux toujours demander ).

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function verifyGame()
    	{
    		for(var i=0; i<tabOfMoutons.length; i++)
    		{
    			if(tabOfMoutons[0]==2 && tabOfMoutons[1]==2 && tabOfMoutons[2]==2)
    			{	
    			alert("c'est gagné!!");
    			initializeGame();	
    			}
    		}
    	}

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [Plugin] Tablesorter message quand tableau vide
    Par LhIaScZkTer dans le forum jQuery
    R�ponses: 1
    Dernier message: 14/12/2012, 11h47
  2. R�ponses: 6
    Dernier message: 05/01/2006, 14h23
  3. tableau tri�
    Par devd�buto dans le forum C
    R�ponses: 3
    Dernier message: 07/11/2005, 18h00
  4. [Tableau][TRI] Tri d'un String[]
    Par zakir dans le forum Collection et Stream
    R�ponses: 2
    Dernier message: 17/03/2005, 17h31
  5. URGENt: recherche dans un tableau tri� par ordre alphabetiqu
    Par JulPop dans le forum G�n�ral JavaScript
    R�ponses: 4
    Dernier message: 12/02/2005, 17h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo