Partage
  • Partager sur Facebook
  • Partager sur Twitter

inclure des atributs dans une balise

javascript?

Sujet résolu
    8 mai 2010 à 15:55:50

    Salut a tout les zer0s.
    Voila j'ai creer un script pour afficher une infobulle sur un lien et qui remplace l'infobulle d'origine(qui est tres moche d'ailleurs).
    Alors a chaque foi que j'ai un lien <a></a> i faut que j'ajoute tout les atributs d'evenement avec la fonction a declancher.
    en fait je voudrai que javascript trouve les liens(je croit que c'est possible avec getElementByTagName('a')) mai apres je fai koi pour ajouter :
    -
    <onmouseover="if(document.getElementById('bulle').style.display=='none'){document.getElementById('bulle').style.display='block'};bubble_position(event,this.id)" onmouseout="if(document.getElementById('bulle').style.display=='block'){document.getElementById('bulle').style.display='none';};init_title(this.id)">
    
    a l'interieur c'est a dire :<a (ici) title="le contenu de l'infobulle(en s'en fout)">lien</a>
    Bon bah merci d'avance :p
    • Partager sur Facebook
    • Partager sur Twitter
      8 mai 2010 à 16:07:59

      Salut, un truc comme ça?

      liens = document.getElementsByTagName('a');
      
      for (var i = 0; i < liens.length; i++)
      {
         liens[i].onmouseover = function()
         {
            if(document.getElementById('bulle').style.display=='none')
            {
               document.getElementById('bulle').style.display='block';
            }
            bubble_position(event,this.id);
         }
      
         //pareil pour le onmoueout
      }
      


      • Partager sur Facebook
      • Partager sur Twitter
        8 mai 2010 à 16:18:00

        Finalement je crois que c'est sa.Par contre pourquoi lien.length(c'est pour recuperer le nombre de lien dans la page?)
        En tout cas merci :) je teste et je vous dis

        edit:Finalement sa marche pas:sa serai trop compliqué car il faut envoyer des argument a la fonction qui depend de l'ID du lien.
        je passe la source
        <a id="lien1" onmouseover="if(document.getElementById('bulle').style.display=='none'){document.getElementById('bulle').style.display='block'};bubble_position(event,this.id)" title="Aller a la page d'accueil" onmouseout="if(document.getElementById('bulle').style.display=='block'){document.getElementById('bulle').style.display='none';};init_title(this.id)" href="index.php">Accueil</a>
        

        et le javascript
        function init_title(id)
        {
        document.getElementById(id).title = document.getElementById('bulle').innerHTML;
        }
        
        function bubble_position(event,id)
        {
          
          var x = event.clientX;
          var y = event.clientY;
          document.getElementById('bulle').style.top = y + 'px';document.getElementById('bulle').style.left= x + 'px';
          document.getElementById('bulle').innerHTML = document.getElementById(id).title;
          document.getElementById(id).title='';
        }
        
        • Partager sur Facebook
        • Partager sur Twitter
          8 mai 2010 à 16:29:42

          Oui, liens.length c'est le nombre de liens dans la page.

          Pour les paramètres, j'avais pas fait attention au event :

          liens = document.getElementsByTagName('a');
          
          for (var i = 0; i < liens.length; i++)
          {
             liens[i].onmouseover = function(<gras>event</gras>)
             {
                if(document.getElementById('bulle').style.display=='none')
                {
                   document.getElementById('bulle').style.display='block';
                }
                bubble_position(event,this.id);
             }
          
             //pareil pour le onmoueout
          }
          


          J'ai pas testé mais ça devrait passer. Sinon, il faudra voir le code source de la page.
          • Partager sur Facebook
          • Partager sur Twitter

          inclure des atributs dans une balise

          × 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