Tempo fa avevo recuperato questo script da qualche parte. Serve per recuperare il testo selezionato in una textarea e reinserirlo nella stessa posizione con dei marcatori.
In pratica è il codice usato per un editor di testi.
Ho scoperto a malinquore che non funziona ne con FF ne con Opera. Sapete come risolvere?
Oppure avete uno script che fa lo stesso lavoro e che sia crossbrowser?


codice:
//questa funzione aquisisce la posizione del cursore nella textarea interessata.
function storeCaret () {
var textEl = eval("document.all.code");
       if (textEl.createTextRange) 
         textEl.caretPos = document.selection.createRange().duplicate();
     }
//Questa funzione aggiunge il testo nella posizione in cui si trova il cursore o intorno al testo selezionato
function AddText(NewCode) {
var textEl = eval("document.all.code");
	if (textEl.createTextRange && textEl.caretPos) {
		var caretPos = textEl.caretPos;
		caretPos.text = NewCode;
	} else {
		textEl.value+=NewCode;
	}
	textEl.focus();
}
//Questa funzione aquisisce dalla textarea indicata il testo eventualmente selezionato
function getText() {
var textEl = eval("document.all.code");
	if (textEl.createTextRange && textEl.caretPos) {
		return textEl.caretPos.text;
	} else {
		return '';
	}
}