tonytruand
Messages postés175Date d'inscriptionsamedi 23 octobre 2004StatutMembreDernière intervention 8 mars 2015
-
16 mai 2005 à 20:30
tonytruand
Messages postés175Date d'inscriptionsamedi 23 octobre 2004StatutMembreDernière intervention 8 mars 2015
-
17 mai 2005 à 20:07
bonsoir,
J'ai encore un soucis, j'aimerais envoyer du texte dans un div à l'endroit du curseur comme cela se fait déjà dans un textarea (vu sur forum), j'ai récupéré des bouts de codes (merci à tous) mais rien n'y fait le 2 ème envoi de texte, écrase le premier ??? merci par avance !
<html>
<head>
<script>
var g_posCurseur; // variable global positition du curseur
//définit la postition du curseur
function setPosCurseur() {
g_posCurseur = getPosCurseur(poster.Layer1);
}
//retourne l'emplacement du curseur
function getPosCurseur(oLayer1) {
//sauve le contenu avant modification de la zone de texte
var sAncienTexte = oLayer1.value;
//crer un objet "Range Objet" et sauve son texte avant modification
var oRange = document.selection.createRange();
var sAncRangeTexte = oRange.text;
//cette chaine ne doit pas se retrouver dans la zone de texte !
var sMarquer = String.fromCharCode(28)+String.fromCharCode(29)+String.fromCharCode(30);
//insère la chaine où le curseur est
oRange.text = sAncRangeTexte + sMarquer; oRange.moveStart('character', (0 -
sAncRangeTexte.length - sMarquer.length));
//sauver la nouvelle chaine
var sNouvTexte = oLayer1.value;
//remet la valeur du texte à son ancienne valeur
oRange.text = sAncRangeTexte;
//recherche dans la nouvelle chaine et trouve l'emplacement
// de la chaîne de marquage et renvoie la position
for (i=0; i <= sNouvTexte.length; i++) {
var sTemp = sNouvTexte.substring(i, i + sMarquer.length);
if (sTemp == sMarquer) {
var cursorPos = (i - sAncRangeTexte.length);
return cursorPos;
}
}
}
//insère la chaine dans la zone de texte où le curseur est
function insereChaine(sChaine) {
//si curseur n'a pas de position : insère la chaine à la fin
if (typeof(g_posCurseur)=='undefined') {
poster.Layer1.value+=sChaine;
}else {
var firstPart = poster.Layer1.value.substring(0, g_posCurseur);
var secondPart = poster.Layer1.value.substring(g_posCurseur,poster.Layer1.value.length);
poster.Layer1.value = firstPart + sChaine + secondPart;
}
}
</SCRIPT>
<script>
function infoWrite(Layer1){
document.getElementById("Layer1").innerHTML = Layer1;
}
</script>
</head>