Apr�s de longues recherches, il semblerait qu'il ne s'agisse pas simplement d'un probl�me d'expression r�guli�re, mais plut�t d'une particularit� d'Internet Explorer dans la mani�re dont son parser DOM g�re les espaces et les retours � la ligne.
J'ai eu beau tester diverses m�thodes d'acc�s aux donn�es, mais sans succ�s :
1 2 3
| text = document.getElementById('demo').element.childNodes[0].data; // acces DOM
text = document.getElementById('demo').element.childNodes[0].nodeValue;
text = $('demo').get('html'); // MooTools |
La seule alternative compatible multi-browsers que j'ai trouv�e consiste � englober mon <div> dans un �l�ment <pre>, de telle sorte que les espaces et retours chariot soient conserv�s. J'ai alors logiquement pens� reproduire cette situation dynamiquement via le DOM, mais malheureusement sans succ�s:
1 2 3 4
| var demo = document.getElementById('demo');
var monPre = document.createElement('pre');
demo.parentNode.appendChild(monPre);
monPre.appendChild(demo); |
Ou m�me simuler le comportement d'un <pre> � l'aide des CSS... en vain.
<div id="demo" style="white-space:pre;">
Je me trouve d�s lors comme qui dirait en manque d'inspiration pour trouver une solution correcte et portable face � ce probl�me. Si quelqu'un a d�j� eu l'occasion de se pencher l�-dessus, toute id�e ou retour d'exp�rience seront les bienvenus !
D'avance, un grand merci !
Partager