[DOM] Création d'éléments DOM - Pb IE6
Bonjour à tous,
Voilà, j'ai un souci quand je créé divers éléments DOM dans ma page sous IE.
Sous FF et IE7, aucun soucis.
Voici mon code Javascript:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
|
var actu = docXML.getElementsByTagName('actualite');
//Parcours des actualités
for(var i=0; i<actu.length; i++)
{
//Récupération du titre de l'actualité
var titre = actu[i].getElementsByTagName('titre')[0].firstChild.nodeValue;
//Récupération de la date de l'actualité
var date = actu[i].getElementsByTagName('date')[0].firstChild.nodeValue;
//Récupération du contenu de l'actualité
var message = actu[i].getElementsByTagName('message')[0].firstChild.nodeValue;
//Création d'un conteneur 'div' pour l'actualité
var contentActu = document.createElement('div');
//Ajout de la classe 'actu' au conteneur 'div' créé
Element.addClassName(contentActu, 'actu');
//Création d'un conteneur 'div' pour le titre de l'actualité
var headerActu = document.createElement('div');
//Ajout du titre dans le conteneur 'div' créé
headerActu.appendChild(document.createTextNode(titre));
//Ajout de la classe 'titreActu' au conteneur 'div' créé
Element.addClassName(headerActu, 'titreActu');
//Ajout du conteneur 'div' du titre au conteneur 'div' de l'actualité
contentActu.appendChild(headerActu);
//Création d'un conteneur 'div' pour le message de l'actualité
var corpsActu = document.createElement('div');
//Ajout du message au conteneur 'div' du message
corpsActu.innerHTML = message;
//Ajout du conteneur 'div' du message au conteneur 'div' de l'actualité
contentActu.appendChild(corpsActu);
//Création d'un conteneur 'div' pour la date de l'actualité
var dateActu = document.createElement('div');
//Ajout de la date au conteneur 'div' de la date
dateActu.appendChild(document.createTextNode(date));
//Ajout de la classe 'dateActu' au conteneur 'div' de la date
Element.addClassName(dateActu, 'dateActu');
//Ajout du conteneur 'div' de la date au conteneur 'div' de l'actualité
contentActu.appendChild(dateActu);
//Ajout du conteneur 'div' de l'actualité à l'élément d'id 'actualites'
$('actualites').appendChild(contentActu);
} |
Voici le flux XM renvoyé dans la variable docXML :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
<?xml version="1.0" encoding="utf-8" ?>
<actualites>
<actualite>
<titre>Fête du 14 juillet</titre>
<date>Samedi 14 Juillet 2008</date>
<message><![CDATA[<em>Fête du 14 juillet avec jeux et soirée dansante</em>]]></message>
</actualite>
<actualite>
<titre>Inauguration</titre>
<date>Mardi 08 Juillet 2008</date>
<message><![CDATA[<strong>Inauguration du site Internet de la commune de Gellainville</strong>]]></message>
</actualite>
<actualite>
<titre>Bric-à-brac</titre>
<date>Dimanche 08 Mai 2008</date>
<message><![CDATA[<u>Bric-à-brac de Gellainville le terrain communal</u>]]></message>
</actualite>
<actualite>
<titre>Bric-à-brac</titre>
<date>Dimanche 08 Mai 2008</date>
<message><![CDATA[<u>Bric-à-brac de Gellainville le terrain communal</u>]]></message>
</actualite>
</actualites> |
Vous aurez compris que j'utilise la librairie Prototype.
L'erreur que me renvoie IE6 est 'contentActu' est indéfini.
Une petite idée de mon problème ??
Merci beaucoup