Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[ie] connaître la position du curseur dans une textarea

4 réponses
Avatar
Bipède
Bonjour.

Quelqu'un connait-il un moyen de connaître la position du curseur (ou
plus généralement le début et la fin d'un TextRange) en terme de
position de caractère dans la chaine "value" d'une textarea ?

4 réponses

Avatar
O.L.
Bonjour.

Quelqu'un connait-il un moyen de connaître la position du curseur (ou plus
généralement le début et la fin d'un TextRange) en terme de position de
caractère dans la chaine "value" d'une textarea ?


Regarde sur http://www.javascriptfr.com/code.aspx?ID748
Notamment le commentaire de Abdoulax, qui donne un exemple de code
potentiellement intéressant pour toi :

// textEl est l'objet TEXTAREA
var texteDeb= textEl.value.substring( 0 , textEl.selectionEnd );
var texteEnd= textEl.value.substring( textEl.selectionEnd ,
textEl.textLength );
textEl.value= texteDeb + " " + le_text + " " + texteEnd;

Peut être que textEl.selectionEnd pourrait t'être utile ? (non testé)

@+

--
Olivier Ligny
Créateur web free-lance / www.cyber-tamtam.net

Avatar
O.L.
Bonjour.

Quelqu'un connait-il un moyen de connaître la position du curseur (ou plus
généralement le début et la fin d'un TextRange) en terme de position de
caractère dans la chaine "value" d'une textarea ?


Et voici un autre script trouvé sur
http://www.codecomments.com/JScript/message820220.html (non testé)


// These functions ONLY work on MSIE (Win)
// Gets Cursor Position by comparing to a moving text range.
function GetCursorPosition() {
var obj = document.activeElement;
var cur = document.selection.createRange();
var pos = 0;
if (obj && cur) {
var tr = obj.createTextRange();
if (tr) {
while (cur.compareEndPoints("StartToStart", tr) > 0) {
tr.moveStart("character", 1);
pos++;
}
return pos;
}
}
return -1;
}

--
Olivier Ligny
Créateur web free-lance / www.cyber-tamtam.net

Avatar
Bipède
bonjour

O.L. wrote:
[...]
Peut être que textEl.selectionEnd pourrait t'être utile ? (non testé)


Oui uniquement sur Mozilla.
a+

Avatar
Bipède
O.L. wrote:
Bonjour.

Quelqu'un connait-il un moyen de connaître la position du curseur (ou
plus généralement le début et la fin d'un TextRange) en terme de
position de caractère dans la chaine "value" d'une textarea ?


Et voici un autre script trouvé sur
http://www.codecomments.com/JScript/message820220.html (non testé)


// These functions ONLY work on MSIE (Win)
// Gets Cursor Position by comparing to a moving text range.
function GetCursorPosition() {
var obj = document.activeElement;
var cur = document.selection.createRange();
var pos = 0;
if (obj && cur) {
var tr = obj.createTextRange();
if (tr) {
while (cur.compareEndPoints("StartToStart", tr) > 0) {
tr.moveStart("character", 1);
pos++;
}
return pos;
}
}
return -1;
}


Ca c'est une trés bonne idée en effet. Merci.
a+