Bug Contenteditable sous IE7 et IE8
Bonjour,
Suite à mes tentatives précédentes pour essayer de solutionner un problème, j'essaie d'une autre manière ...
J'ai réussi à reproduire le bug qui me pose tant de problèmes via le code ci-dessous.
Pour tester ce code, il faut ouvrir la page dans Internet Explorer puis faire une petite manip :
1) Faire un double click sur "texte4"
2) Appuyer sur CTRL+C
3) Faire un double click sur "texte2"
4) Appuyer sur CTRL + V
5) Cliquer sur le bouton
Le code html du span se copie dans le textearea en dessous.
Comme vous pouvez le constater, ce code est mal formaté (le tag de fermeture </font> est mal positionné).
Avez-vous une solution pour que le </font> se positionne convenablement lors de la manip ? Ou une idée de code que je pourrais rajouter par la suite pour soit supprimer toutes les balises mal positionnées, ou les re-positionner, ou que sais-je encore ...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| <script language="JavaScript" type="text/javascript">
function CopyContent(sHtmlSource, sTextTarget) {
document.getElementById(sTextTarget).innerText = document.getElementById(sHtmlSource).innerHTML;
}
</script>
<span id="memoVisible" contentEditable="true" style="width:500px">
<p><font color="#ff0000">texte1 texte2 texte3</font></p>
<p>texte4</p>
</span>
<br/><br/>
<button onclick="CopyContent('memoVisible', 'areaInvisible');">Faire un double click sur "texte4" -> CTRL+C puis double click sur "texte2" -> CTRL+V puis click sur ce bouton (le code html retourné sera mal formatté)</button>
<br/><br/>
<textarea id="areaInvisible" style="width:500px; height:100px;"></textarea> |
Merci.