Partage
  • Partager sur Facebook
  • Partager sur Twitter

{{ Titre à modifier }} Javascript

DOM

Anonyme
    18 avril 2011 à 12:53:31

    Je suis en train de lire le cours de javascript et je suis sur le chapitre DOM. Dans le script suivant :

    <html>
    <head>
    <meta charset="utf-8" />
    <title>Le titre de la page</title>
    </head>
    <body>
    <div>
    <p>Un peu de texte <a id="myDiv">et un lien</a></p>
    </div>
    <script>
    var div = document.getElementById('myDiv');
    alert(div);
    </script>
    </body>
    </html>

    Quand le "id" est dans la balise <div>, la boîte de dialogue affiche [ObjectHTMLDivElement] et quand le "id" est dans la balise <p> la boîte de dialogue affiche [ObjectHTMLParagraphElement] mais pourquoi la boîte de dialogue est vide quand je mets le "id" dans la balise <a> ?

    • Partager sur Facebook
    • Partager sur Twitter
      18 avril 2011 à 13:11:18

      Ca fonctionne, exemple si tu fais :

      var div = document.getElementById('myDiv'); alert(div.href);

      <p>Un peu de texte <a id="myDiv" href="#">et un lien</a></p>
      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        18 avril 2011 à 13:38:09

        Merci de ta réponse et effectivement ça fonctionne quand je fais ton exemple mais ce que je veux comprendre c'est pourquoi quand je mets un id dans une balise <a> et que j'utilise un getElementById() et que je fais un alert(), je n'ai rien alors que je devrais avoir un truc du genre [ObjectHTML...Element] ? C'est un détail mais ça me titille ...
        • Partager sur Facebook
        • Partager sur Twitter
          18 avril 2011 à 13:47:05

          Parce que la fonction toString() du lien (<a>) est le contenu de l'attribut href.
          Dans ton cas, ton href est vide, donc ça affiche rien.
          • Partager sur Facebook
          • Partager sur Twitter

          {{ Titre à modifier }} Javascript

          × 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