[POO] Span, nodeValue et sauts de ligne.
Bonsoir,
Mon code javascript génère un DIV, masquée à l'utilisateur, comme suit:
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
|
DVObject.prototype.writeHtmlCode = function() {
//the DV-Object consists of two inner divs
// # content-div
// # close-div
//build the html code
dv.htmlCode = '<div id="parentDV" onClick="dv.hideDV();">\n' +
'<div class="img_popup" id="childDVCont" >' +
'<img src="" width="10" height="10" border="0" alt="" title="" name="picDV">' +
'<span id="spanContent">lol <br /> huhu</span>' +
'</div>' +
'\n' +
'<div id="childDVLoad">'+loadingSign+'</div>' +
'<div id="childDVClose" onClick="dv.hideDV();" title="Fermer">'+closingSign+'</div>' +
'<div id="childDVBeforeAndNext">' +
' <table id="childDVTblBeforeAndNext" cellspacing="0" cellpadding="0">' +
' <tr>' +
' <td><div id="childDVBefore" onClick="dv.showLastImage();" title="Vorheriges Bild"><b>'+beforeSign+'</b></div></td>' +
' <td><div id="childDVNext" onClick="dv.showNextImage();" title="Nächstes Bild"><b>'+nextSign+'</b></div></td>' +
' </tr>' +
' </table>' +
'</div>' +
'</div>';
//write the code to the document
window.document.writeln(dv.htmlCode);
}; |
Jusque là, tout va bien :)
Toutefois, cette DIV est parfois affichée et son contenu varie à chaque affichage. En pratique c'est ce code là qui nous intéresse plus particulièrement :
Code:
1 2 3 4 5 6 7
|
[...]
'<div class="img_popup" id="childDVCont" >' +
'<img src="" width="10" height="10" border="0" alt="" title="" name="picDV">' +
'<span id="spanContent">lol <br /> huhu</span>' +
'</div>' +
[...] |
Je souhaite modifier le contenu du SPAN.
Pour se faire, j'utilise le code suivant :
Code:
1 2 3 4 5 6 7 8 9 10
|
//Ecriture du commentaire dans le span de la DIV
if (document.getElementById("spanContent").firstChild == null)
{
document.getElementById("spanContent").appendChild(document.createTextNode(get_alt_from_imgString(imgString)));
}
else
{
document.getElementById("spanContent").firstChild.nodeValue = get_alt_from_imgString(imgString);
} |
Le commentaire est correctement écrit dans mon SPAN.
Ce qui pose un soucis, c'est que mes sauts de ligne ne sont plus pris en compte par les navigateurs et sont "lisibles". Au lieu d'aller à la ligne dans le texte, l'utilisateur peut lire des "<br />" dans mon texte.
Tant que je n'ai pas modifié le contenu du SPAN, le texte initial est affiché : "lol <br /> huhu"... Mais le point intéressant c'est que ce texte là est correctement interprété et le saut de ligne a bien lieu !
Pourriez-vous me venir en aide, s'il vous plait ?