ho scritto un po 'di codice nel mio gestore di eventi tastiera per inserire un <br>
in risposta alla pressione del tasto Invio:Fai un <br> invece di <div></div> premendo Invio su un contenteditable
event.preventDefault();
document.execCommand('InsertHTML', true, '<br>');
Questo funziona solo se il cursore si trova tra due lettere, se alla fine ho bisogno di due <br>
-Elementi. Posso rilevare se sono alla fine di una linea? O qualche altra idea di lavoro per il problema di invio?
Ho anche provato a catturare il normale evento-chiave (senza premere il tasto ctrl premuto) e creare un evento-tastiera con JS in cui viene premuto il tasto Invio insieme al ctrl. Ma questo dosn't lavoro ...
Ha solo al lavoro in Webkit/Safari ...
Non c'è bisogno di 'range.collapse (false);': Hai già posizionato l'inizio e la fine del campo. Un'alternativa a IERange è il mio Rangy (http://code.google.com/p/rangy), che è simile nel concetto ma più pienamente realizzato (e mantenuto attivamente). –