Toon posts:

[js] Cursos gaat niet mee na \n

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo,

De volgende code zorgt ervoor dat wanneer er, in een rich text editor, een enter gegeven wordt, er een 'soft line break' uitgevoerd wordt:

code:
1
2
3
4
5
6
7
8
document.frames["rte2"].document.onkeydown = OnKeyDown;

if (document.frames["rte2"].event.keyCode == 13) {
    sel = document.selection.createRange();
    sel.text += "\n"; 
return false;
}
}


Het probleem is dat de cursor niet mee verplaatst!? Ik heb al flink wat afgezocht op google, maar ik kan geen oplossing vinden. Kan iemand mij misschien op weg helpen?

  • basz
  • Registratie: April 2000
  • Laatst online: 21-10 08:00

basz

Professioneel prutser

Klopt, moet je ook zelf doen (correct me if i'm wrong..)

Op deze site, bij puntje 5 staat je oplossing.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function setCaretTo(obj, pos) { 
    if(obj.createTextRange) { 
        /* Create a TextRange, set the internal pointer to
           a specified position and show the cursor at this
           position
        */ 
        var range = obj.createTextRange(); 
        range.move("character", pos); 
        range.select(); 
    } else if(obj.selectionStart) { 
        /* Gecko is a little bit shorter on that. Simply
           focus the element and set the selection to a
           specified position
        */ 
        obj.focus(); 
        obj.setSelectionRange(pos, pos); 
    } 
}

Verwijderd

Topicstarter
Bedankt, hier kan ik wat mee. :)

Verwijderd

Topicstarter
Gelukt met de volgende code:
code:
1
2
3
4
5
6
7
if (document.frames["rte2"].event.keyCode == 13) {
        sel = document.selection.createRange();
        sel.text += "\n"; 
        sel.move("character", 0); 
        sel.select(); 
return false;
}