Faire apparaître un tableau progressivement

Faire apparaître un tableau progressivement - HTML/CSS - Programmation

Marsh Posté le 28-09-2008 à 12:11:44    

Bonjour tout le monde !
 
Voilà, je cherche à faire apparaître les lignes d'un tableau progressivement, avec un petit temps d'attente entre chaque (et le must serait un fondu quand la case apparaît).  
 
Je n'ai que quelques vagues notions de JS, alors je suis un peu paumé.  
 
Quelqu'un pourrait me guider vers une piste, ou encore mieux, me donner le bout de code adéquat ?  
 
Merci !
 
PS : Mon tableau est généré via un while, je pense que cela importe peu  
 

Code :
  1. <table>';
  2. while (cond) { echo '<tr><td>case</td></tr>'; }


---------------
Hello hello super jello
Reply

Marsh Posté le 28-09-2008 à 12:11:44   

Reply

Marsh Posté le 29-09-2008 à 10:33:47    

Je ne comprends pas pourquoi faire cela, mais en tous cas, echo n'existe pas en javascript. Il existe document.write, et le navigateur affiche habituellement une page quand il connait le contenu entier, et non pas au fur et à mesure.
 

Reply

Marsh Posté le 01-10-2008 à 23:25:57    

va voir du cote de la librairie scriptaculous ;)
http://script.aculo.us/


---------------
VNR CAMENBERT
Reply

Marsh Posté le 02-10-2008 à 03:19:05    

Pour moi ya 2 facon de faire assez simple :
 
Soit t'affiche tt ton tableau dans une DIV, et t'affiche ta DIV petit a petit
 
height : 100px;
height : 110px
120
130
Jusqu'a sa taille max.
 
Soit tu cré ligne par ligne, mais c un peu plus complexe:
 

Code :
  1. MALIGNE= document.createElement("tr" ); // on cré une ligne
  2. for(var i = 0; i < x; i++) MALIGNE.appendChild(document.createElement("td" ); // on cré x cellule sur la ligne
  3. MONTABLEAU.appendChild(MALIGNE); // on affiche tout


 
La ca cré une ligne avec des cellule (x est nombres de cellules)
Apres ya plus qua les remplir avec INNERhtml ex :
 
MONTABLEAU.rows[y].cells[x].INNERhtml='BLABLA';

Message cité 1 fois
Message édité par GordonF_69 le 02-10-2008 à 03:21:22
Reply

Marsh Posté le 02-10-2008 à 09:15:38    

GordonF_69 a écrit :

Pour moi ya 2 facon de faire assez simple :
 
 

Code :
  1. MALIGNE= document.createElement("tr" ); // on cré une ligne
  2. for(var i = 0; i < x; i++) MALIGNE.appendChild(document.createElement("td" ); // on cré x cellule sur la ligne
  3. MONTABLEAU.appendChild(MALIGNE); // on affiche tout


 


 
+1 pour cette solution qui utilise le DOM couplé avec un setTimeout avec une fonction récursive pour ne pas dépendre de la perfomance de la machine pour afficher le tableau :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed