D'aprés ce que j'ai vu,il marche déja sur IE et Mozilla.Et donc comme son titre l'indique,il permet d'effectuer une insertion à partir de la position du curseur dans une textbox ou autre.Le modebb permet de récuperer le texte selectionné et de le mettre dans des balises.Ainsi quand le modebb est activé (modebb = true) la valeur du texte à ajouter doit contenir les balises de fin et de début tels que [u]
/u.
Source / Exemple :
<html>
<body>
<input name="msg" id="modif"><input type="button" value="Insert" onclick="insert('modif','[u]/u',true)">
<script>
<!--
function insert(box,text,modebb)
{
box = document.getElementById(box);
var str = box.value;
var msgstart = box.selectionStart,msgend = box.selectionEnd; // recupération de la position du curseur
var balise = text.split("]");
var balisedebut = balise[0] + "]",balisefin = balise[1] + "]"; //recuperation de la balise de debut et de fin
if(typeof msgstart == "undefined")// cas IE
{
box.focus();
var caretPos = document.selection.createRange().duplicate();
if(!modebb)
caretPos.text = text; // modification du texte séléctionné
else
caretPos.text = balisedebut + caretPos.text + balisefin; // modification du texte séléctionné avec les balises
}
else // cas autre
{
if(!modebb)
box.value = str.substring(0,msgstart) + text + str.substring(msgend,str.length); // ajout simple a partir de la position du curseur
else
box.value = str.substring(0,msgstart) + balisedebut + str.substring(msgstart,msgend) + balisefin + str.substring(msgend,str.length); // ici je recupere le texte selectionné et ajoute une balise au début et à la fin
box.setSelectionRange(msgstart+text.length,msgstart+text.length); // repositionne le curseur dans la textbox
}
box.focus();
}
-->
</script>
</body>
</html>
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.