Bonjour,

j'ai une zone contentEditable et un bouton "toto".
Je souhaite lorsque je clique sur le bouton cela rajoute le texte "toto" en début de ligne.
En parsant le DOM du contentEditable je parviens sans problème à rajouter ce noeud avant le noeud ayant le focus de la façon suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
	if (window.getSelection) {
		var selObj = window.getSelection();
alert(selObj);
		var currentNode = selObj.anchorNode; 
		currentNode.nodeValue = "toto" + currentNode.nodeValue
	}
Par contre dans le cas où je suis sur une ligne vide dans le contentEditable et que je clique sur le bouton toto, selObj.anchorNode pointe sur le div [object HTMLDivElement] représentant l'élement contentEditable lui-même et non sur l'élement <br> représentant la ligne vide. Je ne trouve donc pas de moyen d'insérer mon texte toto sur cette ligne vide

Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
<div id='texte_editable' contentEditable='true'>
</div>

Dans le cas où mon curseur a le focus sur la ligne vide entre les 2 lignes tests et que je clique sur le bouton toto, je voudrais pouvoir récupérer le noeud qui contenait le focus et insérer le texte toto à sa place.

[bouton toto]
-----contentEditable----
test

test
------------------------

[bouton toto]
-----contentEditable----
test
toto
test
------------------------

Une idée ?

Merci pour votre aide!!!

Patrick