Ajouter ou l'on veut dans textarea, ou l'on place le curseur...
netwebzone
Messages postés55Date d'inscriptiondimanche 12 décembre 2004StatutMembreDernière intervention22 août 2008
-
15 mars 2005 à 20:52
matsky
Messages postés24Date d'inscriptionmardi 23 avril 2002StatutMembreDernière intervention15 décembre 2009
-
9 janv. 2008 à 04:41
Bonjour,
J'utilise cette fonction pour ajouter des smileys dans un textarea seulement le probleme c'est que ca les place toujours à la fin de ce qui est déja écrit et donc on ne peut pas le placer ou on veut...
Par exemple, c'est ecrit :
"Bonjour, ca va ? Je me présente"
Je clique sur un smiley et le code se met directement après présente, comment faire si je veux le mettre après "ca va ?" par exemple ? Pourtant j'ai placé le curseur à l'endroit la...
Merci
A+
La fonction :
Code:,
----
function emoticon(text) {
var txtarea = document.news.newst;
text = ' ' + text + ' ';
if (txtarea.createTextRange && txtarea.caretPos) {
var caretPos = txtarea.caretPos;caretPos.text caretPos.text.charAt(caretPos.text.length - 1) ' ' ? caretPos.text + text + ' ' : caretPos.text + text;
txtarea.focus();
} else {
txtarea.value += text;
txtarea.focus();
}
}
A voir également:
Ajouter ou l'on veut dans textarea, ou l'on place le curseur...
matsky
Messages postés24Date d'inscriptionmardi 23 avril 2002StatutMembreDernière intervention15 décembre 2009 9 janv. 2008 à 04:40
Salut essaie çà, en espérant que ça t'aide!
J'ei testé sous IE 6 et FF 2 ça roule vu de loin.
<HTML>
<HEAD>
<SCRIPT>
//Pour IE
function storeCaret (textEl) {
if (textEl.createTextRange)
textEl.caretPos = document.selection.createRange().duplicate();
}
//Pour IE et FF
function insertAtCaret (textEl, text) {
//IE
if (textEl.createTextRange && textEl.caretPos) {
var caretPos = textEl.caretPos;
caretPos.text caretPos.text.charAt(caretPos.text.length - 1) ' ' ?
text + ' ' : text;
} //FF
else if(textEl.selectionStart && textEl.selectionEnd){
if(textEl.selectionStart==textEl.selectionEnd) {
var tmpTxt = textEl.value.substr(0,textEl.selectionStart)+text+textEl.value.substr(textEl.selectionEnd,textEl.value.length);
textEl.value = tmpTxt;
}else {
var subs = textEl.value.substr(textEl.selectionStart, textEl.selectionEnd);
textEl.value = textEl.value.replace(subs,text);
}
}else //Pour autre si pas compat
textEl.value += text;
}
</SCRIPT>
</HEAD>
<FORM NAME="aForm">
<TEXTAREA NAME="aTextArea" ROWS="5" COLS="80" WRAP="soft"
ONSELECT="storeCaret(this);"
ONCLICK="storeCaret(this);"
ONKEYUP="storeCaret(this);"
ONBLUR="storeCaret(this);">
Kibology for all.
All for Kibology.
</TEXTAREA>
</FORM>
<SCRIPT>objtxt = new textArea(document.aForm.aText);</SCRIPT>