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 :

S�lecteur "open dialog" multiple


Sujet :

JavaScript

  1. #1
    Membre r�gulier
    Homme Profil pro
    Lyc�en
    Inscrit en
    Mai 2014
    Messages
    6
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activit� : Lyc�en

    Informations forums :
    Inscription : Mai 2014
    Messages : 6
    Par d�faut S�lecteur "open dialog" multiple
    Salut � tous,

    En me baladant sur internet, je suis tomb� sur cette source que je trouve vraiment tr�s sympa, tout particuli�rement celui l�. J'ai alors d�cid� de l'int�grer dans mon site web. Le probl�me, c'est que j�aurais besoin de mettre six fois le bouton "open dialog" sur la m�me page (qui ouvre les m�mes fen�tre mais avec un contenu diff�rent) et le script ne semble pas le dig�rer. En effet, seul le premier fonctionne. Je pense savoir d'o� vient le probl�me, mais je ne sais pas comment y rem�dier...

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    (function() {
        var dlgtrigger = document.querySelector( '[data-dialog]' ),
        somedialog = document.getElementById( dlgtrigger.getAttribute( 'data-dialog' ) ),
        dlg = new DialogFx( somedialog );
        dlgtrigger.addEventListener( 'click', dlg.toggle.bind(dlg) );
    })();
    Je pense que c'est la premi�re ligne qui s�lectionne le premier �l�ment data-dialog qu'elle trouve et du coup ne prends pas en compte les suivants...
    Voil� un code simplifi� de ce que je voudrais faire :

    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    <div class="boite1">
       <!-- BOITE 1 -->
       <div class="container">
          <div class="content">
             <div id="somedialog_1" class="dialog">
                <div class="dialog__overlay"></div>
                <div class="dialog__content">
                   <div class="morph-shape">
                      <svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 560 280" preserveAspectRatio="none">
                         <rect x="3" y="3" fill="none" width="556" height="276"/>
                      </svg>
                   </div>
                   <div class="dialog-inner">
                      <!-- ICI LE CONTENU DE LA BOITE DE DIALOGUE -->
                   </div>
                </div>
             </div>
          </div>
       </div>
       <!-- FIN BOITE 1 -->
    </div>
    <div class="boite2">
       <!-- BOITE 2 -->
       <div class="container">
          <div class="content">
             <div id="somedialog_2" class="dialog">
                <div class="dialog__overlay"></div>
                <div class="dialog__content">
                   <div class="morph-shape">
                      <svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 560 280" preserveAspectRatio="none">
                         <rect x="3" y="3" fill="none" width="556" height="276"/>
                      </svg>
                   </div>
                   <div class="dialog-inner">
                      <!-- ICI LE CONTENU DE LA BOITE DE DIALOGUE -->
                   </div>
                </div>
             </div>
          </div>
       </div>
       <!-- FIN BOITE 2 -->
    </div>
    <!-- BOUTONS POUR OUVRIR LES BOITES -->
    <a data-dialog="somedialog_2">Ouvrir boite 1</a>
    <a data-dialog="somedialog_1">Ouvrir boite 2</a>

    Si quelqu'un pouvait prendre le temps de t�l�charger la source et m'aider � rendre le script dynamique, je lui en serait infiniment reconnaissant ! Merci beaucoup d'avance !

  2. #2
    Membre r�gulier
    Homme Profil pro
    Lyc�en
    Inscrit en
    Mai 2014
    Messages
    6
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activit� : Lyc�en

    Informations forums :
    Inscription : Mai 2014
    Messages : 6
    Par d�faut
    Bon apr�s des centaines de tentatives, j'ai enfin r�ussi � faire un script qui fonctionne.
    Bien que cela ne semble pas d�ferler la chronique par ici, je poste tout de m�me le script. On sait jamais �a pourrait int�resser quelqu'un.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    (function(){
    	var dlgTrigger = document.querySelectorAll('[data-dialog]');
    	var someDialog, dlg;
    	for (i = 0; i < dlgTrigger.length; i++){
    		someDialog = document.getElementById( dlgTrigger[i].getAttribute( 'data-dialog' ) );
    		dlg	= new DialogFx(someDialog);
    		dlgTrigger[i].addEventListener( 'click', dlg.toggle.bind(dlg) );
    		}
    })();

  3. #3
    R�dacteur

    Avatar de Bovino
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par d�faut
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    <a data-dialog="somedialog_2">Ouvrir boite 1</a>
    <a data-dialog="somedialog_1">Ouvrir boite 2</a>
    Pas de question technique par MP !
    Tout le monde peut participer � developpez.com, vous avez une id�e, contactez-moi !
    Mes formations video2brain : La formation compl�te sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'int�gration de JSFiddle et CodePen sur le forum

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

Discussions similaires

  1. open dialog et trichedit
    Par luckydigit dans le forum C++Builder
    R�ponses: 7
    Dernier message: 08/08/2006, 14h51
  2. [VB6]Common dialog � selection multiple.
    Par m�phistopheles dans le forum VB 6 et ant�rieur
    R�ponses: 1
    Dernier message: 09/05/2006, 19h38

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