Partage
  • Partager sur Facebook
  • Partager sur Twitter

[JS] Novice cherche de l'aide pour diaporama

transmettre une variable

    19 juillet 2006 à 15:45:33


    Bonjour,
    Voila j'ai une planche d'images qui quand on clique dessus ouvre une popup qui contient le diaporama avec toutes les photos mais comment faire pour que sa soit l'image sur laquelle on a cliqué qui s'affiche ??
    Est ce qu'il faut transmettre une variable et comment ?

    La page en question : http://jonathanftp38.free.fr/photo_cluse.html

    dans la page des vignettes :
    <script language="JavaScript">
    function fenetreCent(url,nom,largeur,hauteur,options) {
    var haut=(screen.height-hauteur)/2;
    var Gauche=(screen.width-largeur)/2;
    fencent=window.open(url,nom,"top="+haut+",left="+Gauche+",width="+largeur+",height="+hauteur+","+options);
    }



    Lien des images :
    <td align="center"><a href="diapo_cluse.html" target="fencent" onclick='fenetreCent("","fencent",610,523,"menubar=no,scrollbars=no,statusbar=no")'><p><img class="vignette" src="images/vignettes/cluse/cluse.jpg" alt="Course de Cluse" title="Cliquez pour agrandir dans le diaporama" /></p></a></td>


    Et le code du diaporama :
    <script language="JavaScript">
    <!--
    var bauto = 0;
    var dossier="images/cluse/";
    var numero = 1;
    var total=17;
    function objet() {
    this.length = objet.arguments.length
    for (var i = 0; i < this.length; i++) this[i+1] = objet.arguments[i]
    }
    var nom = new objet ("cluse.jpg", "cluse (1).jpg", "cluse (2).jpg", "cluse (3).jpg", "cluse (4).jpg", "cluse (5).jpg",
     "cluse (6).jpg", "cluse (7).jpg", "cluse (8).jpg", "cluse (9).jpg", "cluse (10).jpg", "cluse (11).jpg", "cluse (12).jpg",
     "cluse (13).jpg", "cluse (14).jpg", "cluse (15).jpg", "cluse (16).jpg");

    function suivante() {
    numero += 1;
    if (numero == nom.length + 1) numero = 1;
    document.image.src = dossier+nom[numero];
    document.all.nb_t.innerHTML=(numero)+" / "+total;
    }
    function precedente() {
    numero -= 1;
    if (numero == 0) numero = nom.length;
    document.image.src = dossier+nom[numero];
    document.all.nb_t.innerHTML=(numero)+" / "+total;
    }
    function changer() {
    numero += 1;
    if (numero == nom.length + 1) numero = 1;
    document.image.src = dossier+nom[numero];
    roll=setTimeout("changer()", 1500);
    document.all.nb_t.innerHTML=(numero)+" / "+total;
    }
    function initial() {
    window.clearTimeout(roll);
    document.image.src = dossier+nom[numero];
    }
    function auto() {
    if (bauto == 0) {
    bauto =1; changer();
    document.automat.src = "images/btt_diapo/stop.jpg";
    document.automat.title = "Stop";
    }
    else {
    bauto =0; initial();
    document.automat.src = "images/btt_diapo/auto.jpg";
    document.automat.title = "Auto";
    }
    }
    //-->
    </script>
    </head>

    <body>

    <div id="haut"><p><img class="haut" src="images/btt_diapo/haut_cluse.jpg" /></p></div>
    <div id="diapo" align="center">&nbsp;<img src="images/cluse/cluse.jpg" width="600" height="450" name="image"></div>

    <table width="300" border="0" align="center">
    <tr>
    <td align="center"><img src="images/btt_diapo/prec.jpg" title="Precedente" width="100" height="20" onClick="precedente();"></td>
    <td align="center"><img src="images/btt_diapo/suivant.jpg" title="Suivante" width="100" height="20" onClick="suivante();"></td>
    <td align="center"><img src="images/btt_diapo/auto.jpg" title="Auto" width="100" height="20" name="automat" onClick="auto();"></td>
    </tr>
    </table>


    <div id="nb_t">
    1 / <script language=Javascript>                                       
    document.write(total);
    </script></div>


    <div id="bas"></div>

    </body>
    </html>


    Voila si quelqu'un pouvait m'aider à trouver comment faire sa serais vraiment cool merci



    Ensuite ma conseillé de faire sa : peofofo # Posté le 19/07/2006 à 09h47

    je connais la réponse à ta question donc je vais te la donnée.
    En JS il n'y a pas 36 solutions pour transmettre des variables.
    De plus ce qui complique la tache, c'est que tu souhaites obtenir la variable dans un popup.
    La seul possible est par l'adresse internet
    exemple
    mapage.html?ma_variable

    variablemarchesanspopup.html

    <script type="text/javascript">
    function transmettreParams(url, variable) {
       url += "?";
       url += variable;
       location.href = url;
    }
    </script>
    <script type="text/javascript">
    var variable = "56734,543435,354354,373574,34364,";
    </script>


    <a href='javascript:transmettreParams("maPage.html", variable)'>aller à mapage.html</a>

    mapage.html
    Code : JavaScript
    <script language="JavaScript" type="text/javascript">

       var variable =location.search.substring(1);
    document.write(variable);
    var nb=variable.length;
    document.write(nb);


    </script>


    Bon c'est simplement pour que tu conprennes comment j'ai fais.
    Maintenant on la transmet dans un popup.

    C'est un peu plus compliqué


    <script type="text/javascript">
    function transmettreParams(url, site, variable) {
    url += "?";
    url += variable;
    location.href = url;
    windows.open(url);
    windows.location = site;
    }
    </script>


    et l'url
    exemple:
    <input type="button" onMouseover='javascript:transmettreParams("histo.html","scope.htm", variable)' value="Histogramme" />
    la page scope.html c'est la page d'origine contenant la variable
    la page histo.html c'est la fenetre ouverte par un popup avec la variable

    et pour la récupération c'est toujours pareil
    Code : JavaScript
    var variable =location.search.substring(1);
    J'utilise substring pour supprimer le "?" de la variable


    Mais j'ai le probleme suivant :


    Comment je fais pour afficher l'image dans le diaporama ?


    div id="haut"><p><img class="haut" src="QUOI METTRE ICI ?" /></p></div>

    • Partager sur Facebook
    • Partager sur Twitter

    [JS] Novice cherche de l'aide pour diaporama

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown