ho questo contenuto div modificabile in HTMLManiglia posizione del cursore nel contenuto div modificabili
<div contenteditable="true" id="TextOnlyPage"></div>
Ed ecco il mio codice jQuery
var rxp = new RegExp("(([0-9]+\.?[0-9]+)|([0-9]+))", "gm");
$('#TextOnlyPage').keyup(function(e){
if(e.keyCode == 13){
e.preventDefault();
$('#TextOnlyPage').children().each(function() {
if ($(this).is("div")) {
$(this).contents().unwrap();
}});
$('#TextOnlyPage').append("<br/>");
}
$('#TextOnlyPage').children().contents().unwrap();
var $this = $(this);
var content = $this.html();
$this.html(content.replace(rxp, "<span class='highlight'>$1</span>"));});
problema è la posizione del cursore, perché quando si applica tag span intorno numeri nel metodo string.replace, quindi il cursore si sposta all'inizio del contenuto modificabile div
. Inoltre non può andare alla riga successiva mentre premo il tasto invio.
So che posso gestirlo tramite gli oggetti range
e selection
, ma non riesco a trovare una risorsa utile per capire come funzionano questi oggetti.
Gentilmente fornirmi una soluzione per questo problema e sarà meglio se la soluzione in angularjs, o fornirmi una risorsa in cui posso comprendere gli oggetti di intervallo e selezione con esempi di lavoro.
Presumo si intende il maggiore di [ '>'] e meno [ '<'] caratteri dal momento che non v'è un accento circonflesso [ '' ^] in qualsiasi parte questo post? – ethorn10
@ ethorn10 In posizione di cursore, l'OP si riferisce alla posizione del punto di inserimento nella casella di testo. –
@ ethorn10 Scusa se non ti ho preso ..! – EMM