Javascript : ajout d'un texte dans un textear

Fermé
Liteulbob Messages postés 37 Date d'inscription vendredi 1 février 2008 Statut Membre Dernière intervention 7 août 2008 - 19 avril 2008 à 16:34
Liteulbob Messages postés 37 Date d'inscription vendredi 1 février 2008 Statut Membre Dernière intervention 7 août 2008 - 19 avril 2008 à 19:58
Bonjour,

Voilà j'aimerais simplement intégrer automatiquement des smileys dans mon formulaire en cliquant sur leur image.

J'ai récupéré ce script là qui marche parfaitement sous IE (positionnant le texte à l'endroit du curseur), mais il ne marche pas sous Firefox ...

Sous ce dernier, il remplace tout simplement le texte précédent par le texte à inscrire.

Sauriez vous comment insérer sans effacer le texte précédent, sous firefox ? (si possible en insérant à l'endroit du curseur, mais sinon je suis quand meme preneur)


Merci ;-)

Voici mon code :



<HTML>
<HEAD>
<TITLE>Insert</TITLE>
<SCRIPT LANGUAGE="JavaScript">


function storeCaret(textEl) {
	if (textEl.createTextRange) textEl.caretPos = document.selection.createRange().duplicate();
}

function insertAtCaret (textEl, text)
{
	if (textEl.createTextRange && textEl.caretPos)
	{
		var caretPos = textEl.caretPos;
		caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? text + ' ' : text;
	}
	else
		textEl.value  = text;
}
</SCRIPT>
</HEAD>
<BODY>
<FORM>
<textarea rows="5" name="zonetexte" cols="20" ONSELECT="storeCaret(this);" ONCLICK="storeCaret(this);" ONKEYUP="storeCaret(this);"> C'est le début du texte.</textarea>
<INPUT TYPE="button" STYLE="font-family:courier;" VALUE="Ajouter" ONCLICK="insertAtCaret(this.form.zonetexte,'LE TEXTE');">
</FORM>
</BODY>
</HTML> 
A voir également:

1 réponse

Liteulbob Messages postés 37 Date d'inscription vendredi 1 février 2008 Statut Membre Dernière intervention 7 août 2008 2
19 avril 2008 à 19:58
bon, bein encore une fois trouvé avant :-p

Tout est dans ce script, très bien fait !

http://actuel.fr.selfhtml.org/articles/javascript/bbcode/index.htm
0