login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Bepalen cursorpositie (Opgelost)

Offline Nikke - 14/05/2007 09:09
Avatar van NikkeNieuw lid Hallo,

Ik heb een javascript-functie nodig die de huidige positie van de cursor in een asp-textbox kan bepalen.

Ik geloof dat het iets met createTextRange zal zijn. Maar wat dit precies doet weet ik ook al niet 
Dus ook een korte (menselijke) beschrijving van deze functie zou mss ook al een grote hulp zijn...

De volledige functie zou natuurlijk ideaal zijn 

2 antwoorden

Gesponsorde links
Offline marten - 14/05/2007 10:47
Avatar van marten Beheerder
  1. function getPosition(e) {
  2. e = e || window.event;
  3. var cursor = {x:0, y:0};
  4. if (e.pageX || e.pageY) {
  5. cursor.x = e.pageX;
  6. cursor.y = e.pageY;
  7. }
  8. else {
  9. var de = document.documentElement;
  10. var b = document.body;
  11. cursor.x = e.clientX +
  12. (de.scrollLeft || b.scrollLeft) - (de.clientLeft || 0);
  13. cursor.y = e.clientY +
  14. (de.scrollTop || b.scrollTop) - (de.clientTop || 0);
  15. }
  16. return cursor;
  17. }
Offline Nikke - 14/05/2007 16:53
Avatar van Nikke Nieuw lid Ik denk dat je het mis begrepen hebt.

Wat ik nodig heb is de index binnen een textbox. Dus bij een textbox met maxlength = 5 kan je met de cursor op 6 posities staan.

Het probleem is ondertussen wel al opgelost.
Toch bedankt voor de reactie.

Dit was het:

  1. function getCursorPosition(textElement)
  2. {
  3. var range = document.selection.createRange().duplicate();
  4. range.moveEnd('character', textElement.value.length);
  5. return textElement.value.lastIndexOf(range.text);
  6. }


En dit om de cursor op die plaats te houden:

  1. var resetCursorPos = e.createTextRange();
  2. resetCursorPos.move("character", cursor);
  3. resetCursorPos.select();
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.22s