Partage
  • Partager sur Facebook
  • Partager sur Twitter

[DHTML] probleme avec un tuto

    29 août 2006 à 21:01:15

    bonjour, alors voila, je lis le tuto sur le dhtml et quand j'en sui icihttp://www.siteduzero.com/tuto-3-3556-1-le-dom.html#ss_part_2
    je me pose une question, comment on affiche le div lien que l'on vient de creer, sa doit etre tout bete mais bon,
    d'avance merci
    • Partager sur Facebook
    • Partager sur Twitter
      29 août 2006 à 21:26:50

      As-tu lu le tuto jusqu'au bout ?? :s
      Parce que c'est expliqué juste après, il faut utiliser appendChild à partir d'un élément qui existe déjà pour pouvoir insérer le div et le lien à l'intérieur de la page.
      • Partager sur Facebook
      • Partager sur Twitter
        29 août 2006 à 21:33:21

        ben je ne comprend aps justement cette histoire de appendchild
        pour l'instant j'ai fait sa:
                        <script language="javascript">
                                var div =document.creatElement("div");
                                div.setAttribute("class", "direct");
                                var texte=document.createTextNode("essai de texte");
                                var tout=div.appendChild(texte);
                                parent.insertBefore(child, referenceChild);
                                parent.replaceChild(newChild, oldChild);
                        </script>
        • Partager sur Facebook
        • Partager sur Twitter
          29 août 2006 à 21:54:25

          Et il sort d'où "parent" ?? C'est censé être une variable,
          par exemple (pour reprendre l'exemple de ton autre topic), ça pourrait être:
          var parent = document.getElementById('conteneur')

          ou alors document.getElementsByTagName('body')[0] (<=> la première balise "body" de la page, il y en a une seule de toute façon).

          Attention quand même, il faut que tu vérifie qu'au moment où ce code est éxécuté, l'élément question existe. (à la fin du chargement de la page).
          Par exemple, ce code ne marchera jamais:

          <script type="text/javascript">
          document.getElementById('div').appendChild(document.createTextNode('texte'));
          </script>
          <div id="div"></div>

          Alors que celui-là oui:

          <div id="div"></div>
          <script type="text/javascript">
          document.getElementById('div').appendChild(document.createTextNode('texte'));
          </script>
          • Partager sur Facebook
          • Partager sur Twitter
            29 août 2006 à 22:21:25

            c'est complex tout sa quand on conait pas...
            deja je viens de comprendre l'histoir du parent qui n'a rien a faire la,

            ensuite j'ai eu une vague idee, est ce que sa sa marcherait?

            <body id="conteneur"></body>


                    <script language="javascript">
                                    var div =document.creatElement("div");
                                    div.setAttribute("class", "direct");
                                    var texte=document.createTextNode("essai de texte");
                                    var tout=div.appendChild(texte);            document.getElementById('conteneur').innerHTML=tout;
                            </script>
            • Partager sur Facebook
            • Partager sur Twitter
              29 août 2006 à 22:42:16

              Non, innerHTML contient le code html en format brut ( du texte quoi), alors que là on bosse avec des objets.

              en plus tout ne vaut rien, (ou rien d'intéressant pour nous en tout cas).
              Au moment ou tu écrit:
              div.appendChild(texte);
              Ca signifie qu'à l'intérieur du div en question, on y rajoute un texte. Ca modifie le div lui même quoi.
              Ensuite, tu peux insérer ce div lui même dans le contenu de la page, de la même façon:
              document.getElementById('conteneur').appendChild(div);

              Le div contient lui même le texte, donc tout est inséré d'un coup...

              J'avoue qu'en me relisant, ça m'a pas l'air compréhensible ce que je raconte... mais je vois pas comment expliquer autrement :euh:
              • Partager sur Facebook
              • Partager sur Twitter
                30 août 2006 à 14:16:10

                oui mais alors dans ce cas la on aurat le div san le texe nan?
                        <script language="javascript">
                                var div=document.creatElement("div");
                                div.setAttribute("class", "direct");
                                var texte=document.createTextNode("essai de texte");
                                document.getElementById('conteneur').appendChild(div);
                        </script>

                <body id="conteneur">

                • Partager sur Facebook
                • Partager sur Twitter
                  30 août 2006 à 20:49:17

                  Forcément si tu ne met pas de commande pour insérer le texte à l'intérieur du div:

                  div.appendChild(text); //Met le texte à l'intérieur du div
                  document.getElementById('conteneur').appendChild(div); //Met le div ET son contenu, le texte, à l'intérieur de body
                  • Partager sur Facebook
                  • Partager sur Twitter
                    31 août 2006 à 0:28:31

                    eu je voudrais pas avoir l'ai d'insister mais sa sa ne marche pas non plus:
                    var div=document.creatElement("div");
                                            div.setAttribute("class", "direct");
                                            var texte=document.createTextNode("essai de texte");
                                            div.appendChild(text);
                                            document.getElementById('conteneur').appendChild(div);
                    • Partager sur Facebook
                    • Partager sur Twitter
                      31 août 2006 à 11:25:19

                      Ah, je crois que c'est une faute dans le tuto, je me rappèle l'avoir signalée O_o.
                      C'est createElement.
                      • Partager sur Facebook
                      • Partager sur Twitter

                      [DHTML] probleme avec un tuto

                      × 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