Avatar billede elskermad.dk Nybegynder
23. august 2006 - 19:56 Der er 11 kommentarer og
1 løsning

focus() til slutningen af teksten

Hej Eksperter!

Som focus() fungerer nu bliver markøren indsat først i teksten (textarea) - Jeg kunne godt tænke mig den var sidst i teksten så man var klar til at skrive!

Hvordan? :)
Avatar billede terrak Nybegynder
23. august 2006 - 20:26 #1
Et utestet tip:
Indlæs den eksisterende tekst i en variabel.
Slet teksten i tekstboksen.
Lav fokus i teksboksen.
Indsæt tekst fra variabel, i tekstboksen.

Jeg kan også afprøve det, hvis du søger en færdig løsning.
Avatar billede terrak Nybegynder
23. august 2006 - 20:34 #2
Jeg kan fortælle at det virker :-)
Avatar billede elskermad.dk Nybegynder
23. august 2006 - 20:43 #3
kan det virkelig passe det skal være så bøvlet? :S
Avatar billede terrak Nybegynder
23. august 2006 - 20:49 #4
Jeg synes nu ikke det er så slemt :-)

<head>
<script type="text/javascript">

function endfocus(textareaid) {
var temptext = document.getElementById(textareaid).innerHTML;
document.getElementById(textareaid).innerHTML = "";
document.getElementById(textareaid).focus();
document.getElementById(textareaid).innerHTML = temptext;
}

</script>
</head>

<body onload="endfocus('mytext')">
<textarea id="mytext">
Hej, dette er en test!
</textarea>
</body>
Avatar billede elskermad.dk Nybegynder
23. august 2006 - 20:55 #5
så blev det lidt mere brugbart :P havde ikke lige tænkt det på den måde!

mange tak! smid et svar
Avatar billede terrak Nybegynder
23. august 2006 - 21:03 #6
:-)
Avatar billede mclemens Nybegynder
23. august 2006 - 21:24 #7
Måske en lille forkortelse ...

...

<script type="text/javascript">

function endfocus(textareaid) {
tn=document.getElementById(textareaid);tn0=tn.childNodes[0];
tnt=tn0.nodeValue;tn.focus();tn0.nodeValue=tnt;
}

</script>
</head>

<body onload="endfocus('mytext');">
<textarea id="mytext">Hej, dette er en test!</textarea>
</body></html>
Avatar billede terrak Nybegynder
24. august 2006 - 15:40 #8
Forkortelser kan altid bruges, men i mit eksempel mener jeg at det er mere klart hvad der forgeår (med mindre man er haj) :-)

Jeg ville selv foretrække en løsning der var gennemskuelig, men der er nok også mange som tænker "bare det virker, så er det fint".
Avatar billede mclemens Nybegynder
24. august 2006 - 16:23 #9
Helt ok, det var som sagt blot en forkortelse ...
og så slap man også af med det innerHTML... :)
Avatar billede mclemens Nybegynder
24. august 2006 - 16:30 #10
Og så prøv at sammenligne disse to:



<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><title>Ingen titel</title>

<script type="text/javascript">

function endfocus(textareaid) {
var temptext = document.getElementById(textareaid).innerHTML;
document.getElementById(textareaid).innerHTML = "";
document.getElementById(textareaid).focus();
document.getElementById(textareaid).innerHTML = temptext;
}


function endfocus2(textareaid) {
tn=document.getElementById(textareaid);tn0=tn.childNodes[0];
tnt=tn0.nodeValue;tn.focus();tn0.nodeValue=tnt;
}

</script>
</head>

<body onload="endfocus('mytext');endfocus2('mytext2');">



<textarea id="mytext" style="height:100px;">Hej, dette er en test!

med et mellemrum til næste linje</textarea>



<textarea id="mytext2" style="height:100px;">Hej, dette er en test!

med et mellemrum til næste linje</textarea>



</body></html>
Avatar billede mclemens Nybegynder
24. august 2006 - 16:33 #11
P.s.: Jeg enig i at en løsning gerne må være
overskuelig - så den er lettere at håndtere :)
Avatar billede mclemens Nybegynder
24. august 2006 - 16:34 #12
Uhm, Edit: Jeg (er) enig ...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester