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 :

[switch] utilisation d'un tableau different [Fait]


Sujet :

JavaScript

  1. #1
    Membre éclairé Avatar de kohsaka
    Homme Profil pro
    Intégrateur HTML / Developpeur .NET
    Inscrit en
    Janvier 2007
    Messages
    383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Intégrateur HTML / Developpeur .NET

    Informations forums :
    Inscription : Janvier 2007
    Messages : 383
    Par défaut [switch] utilisation d'un tableau different
    bonjour,
    j'ai un petit problème avec la réalisation d'un switch

    j'ai 3 boutons sur ma page qui appellent qui chacun une fonction qui modifie la variable "choix".
    en fonction de choix, on rentre ensuite dans une des propositions du switch.
    le problème vient de celui-ci puisque sans le switch, le code fonctionne.

    declaration
    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
     
    var tuile = new Array(3);
    for (var i=0; i < tuile.length;i++) //img tuile
    	tuile[i] = new Image();
    tuile[0].src='photo/photo1.jpg';
    tuile[1].src='photo/photo2.jpg';
    tuile[2].src='photo/photo3.jpg';
     
    var presentation = new Array(3);		   
    for (var i=0; i < presentation.length;i++) //img presentation
    	presentation[i] = new Image();
    presentation[0].src='photo/photo1.jpg';
    presentation[1].src='photo/photo2.jpg';
    presentation[2].src='photo/photo3.jpg';
     
    var ardoise = new Array(3);		   
    for (var i=0; i < ardoise.length;i++) //img ardoise
    	ardoise[i] = new Image();
    ardoise[0].src='photo/photo1.jpg';
    ardoise[1].src='photo/photo2.jpg';
    ardoise[2].src='photo/photo3.jpg';
     
    var divers = new Array(3);		    
    for (var i=0; i < divers.length;i++) //img divers
    	divers[i] = new Image();
    divers[0].src='photo/photo1.jpg';
    divers[1].src='photo/photo2.jpg';
    divers[2].src='photo/photo3.jpg';
     
    var text = new Array;
    text[0] = "Toiture 1";
    text[1] = "Toiture 2";
    text[2] = "Toiture 3";
     
    var n=0;
    var choix=4;
    fonctions
    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
     
    function tuile()
    {
    	choix = 1;
    }
     
    function ardoise()
    {
    	choix = 2;
    }
     
    function divers()
    {
    	choix = 3;
    }
     
    function next() 
    {
    	n= ++n;
    	switch choix
    	{
    		case 1:
    			if (n == tuile.length) n=0;
    			window.document.move.src= tuile[n].src;
    			document.getElementById('bloc').innerHTML= text[n];
    		break;
    		case 2:
    			if (n == ardoise.length) n=0;
    			window.document.move.src= ardoise[n].src;
    			document.getElementById('bloc').innerHTML= text[n];
    		break;
    		case 3:
    			if (n == divers.length) n=0;
    			window.document.move.src= divers[n].src;
    			document.getElementById('bloc').innerHTML= text[n];
    		break;
    		case 4:
    			if (n == presentation.length) n=0;
    			window.document.move.src= presentation[n].src;
    			document.getElementById('bloc').innerHTML= text[n];
    		break;
    		default:
    			alert("freestyle");
    		break;
    	}
    }

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre éclairé Avatar de kohsaka
    Homme Profil pro
    Intégrateur HTML / Developpeur .NET
    Inscrit en
    Janvier 2007
    Messages
    383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Intégrateur HTML / Developpeur .NET

    Informations forums :
    Inscription : Janvier 2007
    Messages : 383
    Par défaut
    pas d'amelioration :(
    merci pour ton aide.

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    place des alert dans les case pour voir si il y passe ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre éclairé Avatar de kohsaka
    Homme Profil pro
    Intégrateur HTML / Developpeur .NET
    Inscrit en
    Janvier 2007
    Messages
    383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Intégrateur HTML / Developpeur .NET

    Informations forums :
    Inscription : Janvier 2007
    Messages : 383
    Par défaut
    justement le problème est que je ne peux pas tester :s
    des que je rajoute le switch, plus rien ne marche pas même les fonctions ardoise( ) tuile( ) ou divers( ) j'y avais mis des alert sans succes (alors qu'avant cela marchait parfaitement).

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  7. #7
    Membre éclairé Avatar de kohsaka
    Homme Profil pro
    Intégrateur HTML / Developpeur .NET
    Inscrit en
    Janvier 2007
    Messages
    383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Intégrateur HTML / Developpeur .NET

    Informations forums :
    Inscription : Janvier 2007
    Messages : 383
    Par défaut
    ben j'avais trouvé ça dans un petit tutoriel, comme ça marchait, j'ai préféré pas trop y toucher.

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    Oui tiens
    n=++n fonctionne !!
    c'est bien la première fois que je rencontre cette syntaxe


    de plus une fonction nommée next... c'est dangereux next est une instruction javascript sous Gecko ...

    change le nom de la fonction ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  9. #9
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    Essaie juste avec ça et dis-nous si tu as ton alert :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function next() 
    {
       switch(choix)
       {
          default:
             alert("freestyle");
          break;
       }
    }

  10. #10
    Membre éclairé Avatar de kohsaka
    Homme Profil pro
    Intégrateur HTML / Developpeur .NET
    Inscrit en
    Janvier 2007
    Messages
    383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Intégrateur HTML / Developpeur .NET

    Informations forums :
    Inscription : Janvier 2007
    Messages : 383
    Par défaut
    j'ai renommé la fonction en "suivante"
    j'ai teste ce que tu m'as proposé bisunurs et rien ne s'affiche

  11. #11
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    A quel moment, et comment appelles-tu ta fonction "suivante" ?

  12. #12
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    et comme ça ?sui
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function suivant() {  alert('coucou');
                            switch(choix)  {  default: alert("freestyle"); break; }
     }
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  13. #13
    Membre éclairé Avatar de kohsaka
    Homme Profil pro
    Intégrateur HTML / Developpeur .NET
    Inscrit en
    Janvier 2007
    Messages
    383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Intégrateur HTML / Developpeur .NET

    Informations forums :
    Inscription : Janvier 2007
    Messages : 383
    Par défaut
    ici les 3 fonctions pour changer la valeur de choix :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <ul>
       <li class="rea">
    	<a href="#" class="button-rea" onclick="javascript: tuile()">Tuile</a>
       </li>
       <li class="rea">
            <a href="#" class="button-rea" onclick="javascript: ardoise()">Ardoise</a>
       </li>
       <li class="rea">
    	<a href="#" class="button-rea" onclick="javascript: divers()">Divers</a>	
       </li>
    </ul>

    appelle de prec( ) et suivante( )
    Code html : 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
     
    <table width="800px">
    	<tr>
    	     <td width="100px">
    		<center>
    		    <img src="img/buttonspace.png" onclick="javascript: prec()" class="playerprec"/>
    		</center>
    	     </td>
    	     <td width="600px">
    		<center>
    		     <img src="photo/photo1.png" name="move" class="entreprise"/>
    		      <br/>
    		      <br/>
    			<p ID="bloc"></p>
    		</center>
    	      </td>
    	      <td width="100px">
    		<center>
    			<img src="img/buttonspace.png" onclick="javascript: suivante()" class="playersuite"/>
    		</center>
    	      </td>
    	</tr>
    </table>

  14. #14
    Membre éclairé Avatar de kohsaka
    Homme Profil pro
    Intégrateur HTML / Developpeur .NET
    Inscrit en
    Janvier 2007
    Messages
    383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Intégrateur HTML / Developpeur .NET

    Informations forums :
    Inscription : Janvier 2007
    Messages : 383
    Par défaut
    Citation Envoyé par SpaceFrog
    et comme ça ?sui
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function suivant() {  alert('coucou');
                            switch(choix)  {  default: alert("freestyle"); break; }
     }
    toujours pas, j'ai mis des alert dans tous les fonctions la ^^ mais aucun ne marche.

  15. #15
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    Après avoir relu ton code .... tu donnes à tes fonctions le même nom qu'à des variables de type array définies au-dessus ...

  16. #16
    Membre éclairé Avatar de kohsaka
    Homme Profil pro
    Intégrateur HTML / Developpeur .NET
    Inscrit en
    Janvier 2007
    Messages
    383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Intégrateur HTML / Developpeur .NET

    Informations forums :
    Inscription : Janvier 2007
    Messages : 383
    Par défaut
    ça y est ça marche, merci pour votre aide.

    code final :
    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
     
    function aptuile()
    {
    	choix = 1;
    }
     
    function apardoise()
    {
    	choix = 2;
    }
     
    function apdivers()
    {
    	choix = 3;
    }
     
    function presentation()
    {
    	choix = 4;
    }
     
    function suivante() 
    {	
    	switch (choix)
    	{
    		case 1:
    			n= ++n;
    			if (n == tuile.length) n=0;
    			window.document.move.src=tuile[n].src;
    			document.getElementById('bloc').innerHTML= text[n];
    		break;
     
    		case 2:
    			n= ++n;
    			if (n == ardoise.length) n=0;
    			window.document.move.src=ardoise[n].src;
    			document.getElementById('bloc').innerHTML= text[n];
    		break;
     
    		case 3:
    			n= ++n;
    			if (n == divers.length) n=0;
    			window.document.move.src=divers[n].src;
    			document.getElementById('bloc').innerHTML= text[n];
    		break;
     
    		case 4:
    			n= ++n;
    			if (n == tab_image.length) n=0;
    			window.document.move.src=tab_image[n].src;
    			document.getElementById('bloc').innerHTML= text[n];
    		break;
    	}
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 31/01/2008, 13h59
  2. [Tableaux] Utilisation d'un tableau
    Par Skippy1 dans le forum Langage
    Réponses: 7
    Dernier message: 04/01/2007, 09h07
  3. probléme dans l'utilisation d'un tableau
    Par hamoudasafira dans le forum C++
    Réponses: 10
    Dernier message: 13/12/2006, 08h50
  4. [Tableaux] utilisation d'un tableau à deux dimensions
    Par calitom dans le forum Langage
    Réponses: 1
    Dernier message: 28/11/2006, 18h01
  5. [C#]Quel objet utiliser pour un tableau..
    Par Jinroh77 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 16/10/2006, 20h22

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