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 :

Utilisation de variable dans une liste d'arguments


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut Utilisation de variable dans une liste d'arguments
    Bonjour,

    J'utilise un code existant (fadeSlideShow) déjà répandu su le net.
    Seulement pour mes besoins j'ai du adapter une partie du code, celle de la déclaration des images à utiliser en arguments.
    J'ai donc écrit un code qui crée une liste d'images aléatoirement et la conserve dans une variable.
    Jusque là tout va bien mais quand j'utlise ma variable à la place de la liste dans l'argument rien ne se passe, pourtant ma variable contient bien la liste correctement formatée.

    Il s'agit de la variable "maliste"
    Je suis presque certain que c'est un problème de syntaxe mais étant novice en javascript je coince sur ce truc depuis 3 jours et là j'en ai m....

    Si quelqu'un pouvait m'aider à passer cette variable... un grand merci

    Voici le code complet de mon fichier .js

    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
    var totimages = 100;
    var images=new Array();
     
    for (id = 1; id <= totimages; id++) {
    images[id]="mainpics/apn/apn_" + id + ".jpg";
    }
     
     
    var max_xd = 10; 
    var temp=new Array();
    var maliste = "";
    var xd = 1;
    var found = false;
     
    while (xd <= max_xd) {
    	var choix = Math.floor(Math.random()*totimages+1);
    	temp[xd] = choix;
     
    	 if (xd > 1) {
    	 found = false;
    		 for (var y = 1; y <= xd-1; y++)
    		{
    		if (temp[y]==choix) {
    			found = true;
    			}
    		} 
    	 }
    	 if (found == false) {
    		xd++;
    		if (xd < max_xd+1) {
    			 maliste = maliste + '["' + images[choix] + '"],\n';
    		 }
    		 else {
    			 maliste = maliste + '["' + images[choix] + '"]';
    		 }
     
    	 }
    }
     
    //alert(maliste); //pour verification string finale en mode debug
     
     
    {
     
    var mygallery=new fadeSlideShow({
    	wrapperid: "fadeshow1", //ID of blank DIV on page to house Slideshow
    	dimensions: [360, 240], //width/height of gallery in pixels. Should reflect dimensions of largest image
    	imagearray: [
    	maliste
    	],
    //["mainpics/apn1/apn_1.jpg"],
    //["mainpics/apn1/apn_2.jpg"],
    //["mainpics/apn1/apn_30.jpg"]
    //],
    	displaymode: {type:'auto', pause:5000, cycles:0, wraparound:false, randomize:true}, //pause:1000
    	persist: false, //remember last viewed slide and recall within same session?
    	fadeduration: 3000, //transition duration (milliseconds) //fadeduration: 1000
    	descreveal: "ondemand",
    	togglerid: ""
    })
     
    }
    Merci d'avance...

  2. #2
    Membre averti
    Inscrit en
    Août 2007
    Messages
    360
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 360
    Points : 396
    Points
    396
    Par défaut
    Salut,

    Après la lecture de ton code, il apparait que ta variable "maliste" ne soit pas de type Array.

    Or, ce plugin semble accéder en argument un tableau d'images.


    An array containing the images you wish to show. Each array element contains 4 parts:

    ["path_to_image", "optional_url", "optional_linktarget", "optional_description"]

    Enter a blank string ("") for the optional parts you do not wish to define. Here's a complete example:

    imagearray: [
    ["pool.jpg"],
    ["http://mysite.com/cave.jpg", "http://cnn.com"],
    ["fruits.jpg", "http://cnn.com", "_new"],
    ["dog.jpg", "", "", "This image has a description but no hyperlink"] //<--no trailing comma after very last image element!
    ],

    Notice how there should be no comma trailing the very last element!
    Pour vérifier ta syntaxe, tu peux aussi utiliser Firebug avec Firefox.

    A+

    Mathieu

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut
    Merci Mathieu

    J'ai donc transformé la variable en
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var maliste=new Array();
    Mais cela ne change rien au résultat.

  4. #4
    Invité
    Invité(e)
    Par défaut
    bonjour


    essai cette syntaxe pour le tableau

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for (id = 1; id <= totimages; id++) {
    images.push("mainpics/apn/apn_" + id + ".jpg");
    }
    et pour savoir si les valeurs du tableau existes tu peut toujour ajouter une alerte

  5. #5
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut
    Bonjour,

    Merci, j'ai essayé mais cela donne exactement le même résultat.
    Pour l'alert, c'est déjà fait comme tu peux le voir dans le code que j'ai intégré plus haut, et donc, il m'affiche corectement mes valeurs.

    En fait, comme résultat quand le script est exécuté, il transmet les infos au script de destination mais sans aucune image qui s'affiche (ni erreur, d'aileurs)

    Merci quand-même...

  6. #6
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut Info supplémentaire
    J'ai ajouté un alert dans le script de destination et quand j'utilise l'écriture de base (tel que créé par l'auteur) il interprète les différentes images comme des éléments séparés tandis qu'avec ma méthode il interprète le tout comme une seule longue chaine.
    Une idée pour contourner cela ?
    J'ai essayé de reformarter la variable "maliste" d'autres manières mais sans résultat.

  7. #7
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut
    J'ai fait quelques essais pour trouver des différences et voici:

    Si j'utilise...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    var temp=new Array()
    temp="mainpics/apn/apn_1.jpg";
     
    ...
    ...
    imagearray: [
     
    	[temp]
     
    	],
    cela fonctionne, par contre si je fais comme ça...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    var temp=new Array()
    temp='["'+"mainpics/apn/apn_1.jpg"+'"]';
     
    ...
    ...
    imagearray: [
     
    	temp
     
    	],
    ça ne fonctionne plus, quelqu'un aurait une idée plus précise ?

    Merci

  8. #8
    Inactif
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 117
    Points : 142
    Points
    142
    Par défaut
    Pour expliquer ton problème c'est simple, tu essaye de construire un Array javascript "visuellement". En gros dans ta tête tu vois qu'un array en JS ça s'écrit comme ça :

    var arr = ['chaine1', 'chaine2'];
    mais bizarrement tu créé cet array comme une chaine de carctère, ce qui n'a pas vraiment de sens :s


    Pour résoudre ton pb tu dois te retrouver avec un TABLEAU d'élément et donc arrêter tes bricolages du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ma liste = maliste + '[' + truc[i] + ']';
    Pour corriger ton pb, j'aurai simplement remplacé cette chose :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    if (xd < max_xd+1) {
    			 maliste = maliste + '["' + images[choix] + '"],\n';
    		 }
    		 else {
    			 maliste = maliste + '["' + images[choix] + '"]';
    		 }
    Dans cette ligne tu diss : aout moi images[choix] dans ma liste, mais tu le fais comme si c'était une string

    donc new code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    maliste.push(images[choix]);
    bien sur n'oublie pas de remplacer la ligne
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    maliste = []; //declaration de maliste en array

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 313
    Points : 330
    Points
    330
    Par défaut
    Citation Envoyé par Gatsu35 Voir le message
    donc new code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    maliste.push(images[choix]);
    Pour ajouter à ce qu'explique Gatsu35 sur les tableaux (Array)

    L'autre manière d'ajouter un élément à un tableau (sans utiliser une méthode) :
    maliste[i] = images[choix];
    ou
    maliste[maliste.length] = images[choix];

    Et bien sur, on peut imbriquer des tableaux :
    new Array(new Array()) correspond à [[]]

    Avec par exemple : variable[i].push(new Array()) ou variable[i].push([])

    Accès => variable[i][j] etc...

  10. #10
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut
    @ Gatsu35 et kernelfailure

    Merci à vous deux pour toutes ces infos que je suis en train d'épelucher.
    J'avais quand-même vu en faisant qq recherches (après les explications de Gatsu35) qu'il y avait plusieurs manières de compléter un tableau.

    J'ai donc utilisé les différentes solutions en commencant avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    maliste.push(images[choix]);
    mais cela ne fonctionnait qu'avec la première image, j'ai donc continué à chercher et si j'ai bien compris quand on fait un push il ne prends en compte que le dernier élément du tableau.

    Donc j'ai essayé de comprendre ce que le script attendait comme instruction et voici le format utilisé par défaut:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    ...
    imagearray: [
    	["mainpics/apn/apn_1.jpg","url","target","description"], //AVEC virgule en fin de ligne
    	["mainpics/apn/apn_2.jpg","","",""], //idem
    	["mainpics/apn/apn_3.jpg","","",""] //SANS virgule
    ],
    ...
    et comme moi je l'utilise cette façon-ci:
    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
    ...
    if (found == false) {
    		xd++;
    		if (xd < max_xd+1) {
    			maliste.push(images[choix],"","","ma description");
    			//maliste = maliste + '["' + images[choix] + '"],';
    	 }
    		 else {
    			maliste.push(images[choix],"","","ma description");
    			//maliste = maliste + '["' + images[choix] + '"]';
    		 }
    ...		 
     
    ...		 
    imagearray: [
    	maliste
    ],
    ...
    il semblerait qu'après la 1ère fois que je fais le push l'instruction est stoppée car il l'intérprète comme la fin du tableau à cause de la fameuse virgule.
    Je me demande donc si je ne dois pas essayer de faire le "push" sur le tableau complet et d'un seul coup, mais cela non plus je n'y arrive pas.

    J'imagine que la solution est dans l'explication de kernelfailure mais j'ai un peu de mal à l'appliquer même si je comprends le principe.

    Donc pour le moment ca fonctionne uniquement avec l'image définie lors du premier "push"... et je n'arrive pas à l'appliquer dans la boucle while...
    Je dois recréer un nouveau tableau à chaque passage ? grrrr... deviens fou moi.

    (Et pourtant je m'applique... )

  11. #11
    Inactif
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 117
    Points : 142
    Points
    142
    Par défaut
    il n'y a pas de notion de cette fameuse virgule quand tu construit ton array à la main comme on te l'a indiqué. Tu peux supprimer ton if() à deux francs et ne conserver qu'une seule instruction puisque maintenant c'est la même

    maintenant si tu nous donnais une URL sur le web pour tester ça m'arrangerai

  12. #12
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut
    voici le lien http://www.dnsoft.be/rand/

    Merci de ton aide

  13. #13
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut
    Mais encore une fois, j'ai fait comme vous avez dit tous les deux.
    (J'ai enlevé mon "if" à 2 balles) mais il continue à n'afficher que la première image choisie au hasard et il zappe les suivantes...

  14. #14
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 313
    Points : 330
    Points
    330
    Par défaut
    Alors c'est simple, tu as un tableau de tableaux.

    C'est donc un tableau pour lequel chaque rang/poste/niveau est un tableau composé de 4 rangs/postes/niveaux qui sont :
    le nom d'une image, son url (je suppose), un target d'ouverture de fenêtre (je suppose), et une description de l'image.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    var array = [];
    array[0] = ['nom', 'url', 'target', 'description'];
    array[1] = ['nom', 'url', 'target', 'description'];
    etc...
    qui s'écrit aussi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    [ ['nom','url','target','description'], 
    ['nom','url','target','description'], 
    etc...
    ]
    Le dernier niveau n'a pas de virgule puisqu'il est dernier

    Pour ton cas, avec le push, il suffit de faire :
    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
     
    mygallery.imagearray = []; // initialisation avant ta boucle
    . . . // La boucle
    maliste = []; // Que tu oublies !!! (*)
    maliste.push( image[choix], '', '', 'ma description' ) // Comme tu le fais (*)
    mygallery.imagearray.push( maliste ); // Ce qu'il te manque !!! (**)
    . . . // on continue la boucle
     
    (*)
    Que tu devrais remplacer par :
    maliste = [ image[choix], '', '', 'ma description' ];
     
    (**)
    Qui enfin reviendra à faire :
    mygallery.imagearray.push( [ image[choix], '', '', 'ma description' ] );
    Et voilà !
    (Sauf si je me suis pris les pieds dans le tapis...)

  15. #15
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut
    Euh...
    Là, j'ai essayé (malgré le fait que je ne comprends plus rien) et y'a plus rien qui va...

    Je vais mettre le code complet tel qu'il est devenu actuellement:
    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
    var totimages = 10;
    var images=new Array();
     
    for (id = 1; id <= totimages; id++) {
    images[id]="mainpics/apn/apn_" + id + ".jpg";
    }
     
    var max_xd = 3; 
    var temp = new Array();
    var maliste = [];
    var xd = 1;
    var found = false;
     
     
    while (xd <= max_xd) 
    {
    	var choix = Math.floor(Math.random()*totimages+1);
    	temp[xd] = choix;
    	 if (xd > 1) 
    	 {
    		found = false;
    		for (var y = 1; y <= xd-1; y++)
    		{
    			if (temp[y]==choix) {
    			found = true;
    			}
    		} 
    	 }
    	 if (found == false) {
    		xd++;
    		maliste.push(images[choix],"","","description photo");		
    	 }
    }
     
    //alert(maliste); //pour verification string finale en mode debug
     
    var mygallery=new fadeSlideShow({
    	wrapperid: "fadeshow1", //ID of blank DIV on page to house Slideshow
    	dimensions: [360, 240], //width/height of gallery in pixels. Should reflect dimensions of largest image
    	imagearray: [
    		maliste
    	],
     
    	displaymode: {type:'auto', pause:2000, cycles:0, wraparound:false, randomize:true}, //pause:1000
    	persist: false, //remember last viewed slide and recall within same session?
    	fadeduration: 300, //transition duration (milliseconds) //fadeduration: 1000
    	descreveal: "ondemand",
    	togglerid: ""
    })
    J'ai probablement pas tout compris, mais je vais encore essayer...

  16. #16
    Membre averti
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    313
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 313
    Points : 330
    Points
    330
    Par défaut
    Citation Envoyé par bk313142 Voir le message
    Euh...
    Là, j'ai essayé (malgré le fait que je ne comprends plus rien) et y'a plus rien qui va...

    Je vais mettre le code complet tel qu'il est devenu actuellement:
    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
    var totimages = 10;
    var images=new Array();
    
    for (id = 1; id <= totimages; id++) {
    images[id]="mainpics/apn/apn_" + id + ".jpg";
    }
    
    var max_xd = 3; 
    var temp = new Array();
    var maliste = [];
    var xd = 1;
    var found = false;
    
    
    while (xd <= max_xd) 
    {
    	var choix = Math.floor(Math.random()*totimages+1);
    	temp[xd] = choix;
    	 if (xd > 1) 
    	 {
    		found = false;
    		for (var y = 1; y <= xd-1; y++)
    		{
    			if (temp[y]==choix) {
    			found = true;
    			}
    		} 
    	 }
    	 if (found == false) {
    		xd++;
    		maliste.push([images[choix],"","","description photo"]);		
    	 }
    }
    
    //alert(maliste); //pour verification string finale en mode debug
    
    var mygallery=new fadeSlideShow({
    	wrapperid: "fadeshow1", //ID of blank DIV on page to house Slideshow
    	dimensions: [360, 240], //width/height of gallery in pixels. Should reflect dimensions of largest image
    	imagearray: [
    		maliste
    	],
    
    	displaymode: {type:'auto', pause:2000, cycles:0, wraparound:false, randomize:true}, //pause:1000
    	persist: false, //remember last viewed slide and recall within same session?
    	fadeduration: 300, //transition duration (milliseconds) //fadeduration: 1000
    	descreveal: "ondemand",
    	togglerid: ""
    })
    J'ai probablement pas tout compris, mais je vais encore essayer...
    Enlève les crochets en rouge et ajoute ceux en bleue.

  17. #17
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2009
    Messages : 36
    Points : 17
    Points
    17
    Par défaut


    Ta toute dernière explication était beaucoup plus simple que l'avant dernière.

    En fait j'avais déjà essayé ça bien avant mais je m'obstinais à mettre ça entre guillemets.
    Je faisais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    maliste.push("[" + images[choix],"","","description photo"+"]");
    Mais bon, à présent tout fonctionne correctement.

    Un très, très grand merci à toi kernelfailure et bien sûr aussi à Gatsu35 (qui a aussi essayé de me faire comprendre)

    Voici quand-même le code complet qui servira peut-être à d'autres un jour:
    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
    var totimages = 10;
    var images=new Array();
     
    for (id = 1; id <= totimages; id++) {
    images[id]="mainpics/apn/apn_" + id + ".jpg";
    }
     
    var max_xd = 3; 
    var temp = new Array();
    var maliste = [];
    var xd = 1;
    var found = false;
     
    while (xd <= max_xd) 
    {
    	var choix = Math.floor(Math.random()*totimages+1);
    	temp[xd] = choix;
    	 if (xd > 1) 
    	 {
    		found = false;
    		for (var y = 1; y <= xd-1; y++)
    		{
    			if (temp[y]==choix) {
    			found = true;
    			}
    		} 
    	 }
    	 if (found == false) {
    		xd++;
    		maliste.push([images[choix],"","","description photo"]);		
    	 }
    }
     
    //alert(maliste); //pour verification string finale en mode debug
     
    var mygallery=new fadeSlideShow({
    	wrapperid: "fadeshow1", //ID of blank DIV on page to house Slideshow
    	dimensions: [360, 240], //width/height of gallery in pixels. Should reflect dimensions of largest image
    	imagearray: 
    		maliste
    	,
     
    	displaymode: {type:'auto', pause:2000, cycles:0, wraparound:false, randomize:true}, //pause:1000
    	persist: false, //remember last viewed slide and recall within same session?
    	fadeduration: 300, //transition duration (milliseconds) //fadeduration: 1000
    	descreveal: "ondemand",
    	togglerid: ""
    })
    Voilà, et encore merci à tous les deux...

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 01/06/2007, 14h20
  2. [Conception] Récupèrer une variable dans une liste déroulante
    Par olivier94 dans le forum PHP & Base de données
    Réponses: 22
    Dernier message: 21/02/2007, 12h12
  3. Comment utiliser des variables dans une requête SQL ?
    Par Ragnarok85 dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 12/02/2007, 16h23
  4. [SQL] Utilisation de variables dans une requête SQL
    Par heteroclite dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 07/09/2006, 22h38
  5. utilisation de variable dans une requete
    Par JUSTIN Loïc dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 26/07/2006, 08h40

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