Javascript, multiplier un div


sff
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 336
Inscription: 2 Fév 2005

Javascript, multiplier un div

Message le Jeu Avr 03, 2008 21:44

Bonjours à tous, voila depuis 3 jours, j'ai un soucis que j'arrive pas à résoudre.

Pour commencer voila le code en question :

Code: Tout sélectionner
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>test</title>
</head>


<script type="text/javascript">

function getHTTPObject()
{
  var xmlhttp = false;

  /* on essaie de créer l'objet si ce n'est pas déjà fait */
  if (!xmlhttp && typeof XMLHttpRequest != 'undefined')
  {
     try
     {
        xmlhttp = new XMLHttpRequest();
     }
     catch (e)
     {
        xmlhttp = false;
     }
  }

  if (xmlhttp)
  {
 
     /* on définit ce qui doit se passer quand la page répondra */
     xmlhttp.onreadystatechange=function()
       

      {
            if (xmlhttp.readyState == 4) /* 4 : état "complete" */
            {
                if (xmlhttp.status == 200) /* 200 : code HTTP pour OK */
                {
            
             

                    document.getElementById("babble").innerHTML=xmlhttp.responseText;
                 
                    }
            }
        }
    }
    return xmlhttp;
}

function rafraichir() {
        var xmlhttp = getHTTPObject();
        xmlhttp.open('GET','test4.php?'+new Date(), true);       
        xmlhttp.send(null);
    }
   
window.onload = function() { rafraichir(); setInterval(rafraichir, 1000); }
   
</script>

<body>
   


<div id="babble">
<? echo time(); ?>
</div>


</body>
</html>




A la fin du code il y a un <div id='babble'> time </div>



En fait ce code sert a faire un refresh régulier dans la div babble. Ce code fonctionne parfaitement sous Ie et Firefox. Ce que je voudrais faire en fait, c'est de pouvoir mettre plusieurs div dans la page (faisant tous des refresh), du genre <div id='babble1'> time </div> , <div id='babble2'> time </div> ,<div id='babble3'> time </div> etc...



Mais qu'ils utilisent tous le meme code js. Voila sur quoi le bloque. Je sais pas du tout comment faire.

Quelqu'un peut-il m'aider? Merci


Bacteries
WRInaute passionné
WRInaute passionné
 
Messages: 1369
Inscription: 27 Mai 2004

Message le Ven Avr 04, 2008 8:54

Qu'est ce qui te pose problème exactement?

Tu peux créer des div (fonction js createElement()), leur ajouter des attributs et les ajouter à la page (appendChild()).

manuura
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 11
Inscription: 28 Fév 2006

Message le Ven Avr 04, 2008 15:04

Tu peux rajouter une classe "babble" sur tes div. Après tu les appelles toutes avec un truc du genre :

Code: Tout sélectionner
function all() {

var div = document.getElementsByTagName('div');

   for(var i=0; div.length; i++)
    {
      if(div[i].className == 'babble')
      {
         /* ton action */
         
      }
     }
}


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités