Bonjour,

J'essaie de modifier le contenu d un div en mettant le contenu dans un tableau,
puis à partir de ce tableau j'effectue la réécrire du contenu ce ce div.
L'objectif est le suivant :
contenu du DIV au depart
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
  <div id='newslist' >
		<img src="./img/01.jpg"  class="cexpand"/>
		<img src="./img/02.jpg"  class="cexpand"/>
		<img src="./img/03.jpg"  class="cexpand"/>
 
  </div>
contenu modifié :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
  <div id='newslist' >
                <img src="./img/03.jpg"  class="cexpand"/>
		<img src="./img/01.jpg"  class="cexpand"/>
		<img src="./img/02.jpg"  class="cexpand"/>
		<img src="./img/03.jpg"  class="cexpand"/>
                <img src="./img/01.jpg"  class="cexpand"/>
  </div>
En fait je prend "img 03" (derniere de la liste d origine) pour placer une copie un tête de tableau et "img 01" (premiere de la liste d origine) pour placer une copie en fin de tableau.

Jusque là aucun problème.
Mais lorsque je veux réécrire le contenu du DIV, je n'ai plus le code définissant les images mais ça (sous firebug):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
  <div id='newslist' >
[object HTMLImageElement][object HTMLImageElement][object HTMLImageElement][object HTMLImageElement][object HTMLImageElement]
  </div>
Du coup je n'ai plus rien dans mon DIV à l'affichage...
Apparemment l'idée de passer par un tableau pour la réécrire n'est pas bonne

Pour réécrire mon div je fais ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
var t=document.getElementById("newslist");
t.innerHTML="";
for(var a=0;a<tabImg.length;a++){
   t.innerHTML += tabImg[a];
}
la fonction permettant de generer le tableau
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
function getElements(tag,attr,reg){	  //fonction from SpaceFrog (thanks!!)
	var tabReg=new Array();
	var tabElts=document.body.getElementsByTagName(tag);
	if(!(reg instanceof RegExp)){
		if(reg.indexOf("*")>-1){
			reg=reg.replace(/\*/g,'.+');
			reg=new RegExp(reg);
		}else { return	tabReg; }	
	}	
	i=0;
	while(tabElts[i]){
		if(tabElts[i][attr]){
			if(reg.test(tabElts[i][attr])){tabReg.push(tabElts[i]);}
		}
		reg.test("");
		i++;         
	}
	return tabReg;
}
Pourriez vous m'expliquer comment faire ?

Merci