Avatar billede liferocks Nybegynder
26. maj 2006 - 15:08 Der er 16 kommentarer og
1 løsning

Forstørrer tekst input

Hejsa..

Jeg har et tekst input som der ikke skal være stor når makøren ikke er i den..

Altså når den ikke er i focus er den 30 i width..

men når man sætter makøren i skal den blive 100 i width..

Men den skal ikke bare blive fra 30 til 100..

men fks. 30, 31, 32, 33, 34, 35, 36...

Hvordan kan man det ?

Og jeg vil virkelig også gerne have en forklaring på hvad de forskellige ting gør i den kode :) så derfor sætter jeg pointene til 200 ;)
Avatar billede olebole Juniormester
26. maj 2006 - 15:22 #1
<ole>

input type="text" onfocus="this.style.width='100px'" onblur="this.style.width='30px'" ............... >

/mvh
</bole>
Avatar billede olebole Juniormester
26. maj 2006 - 15:24 #2
200 points er _vildt_ overkill for dette spørgsmål. 30 er rigeligt ... og de to er vist temmelig selvforklarende. Ellers må du spørge  =)
Avatar billede nyp Nybegynder
26. maj 2006 - 15:25 #3
<input onfocus="this.size=100;"  onblur="this.size=30;" title="Fulde navn" size="30" name="testInput" type="text">
Håber det er selvforklarende :)
Avatar billede Tony Juniormester
26. maj 2006 - 15:49 #4
... mangler der ikke noget incrementering på en onKeyUp a la:

var fieldSize = document.getElementByID("myField").size
function expanField() {
  document.getElementByID("myField").size = fieldSize + 1;
   
    if (document.getElementByID("myField").size >= 100) {
    document.getElementByID("myField").size == 100;
    }
}

Nej, det virker ikke, men mon ikke enten 'olebole' eller 'nyp' har et bedre forslag ...
Avatar billede plazm Nybegynder
26. maj 2006 - 15:54 #5
Avatar billede Tony Juniormester
26. maj 2006 - 15:58 #6
plazm: Jow, men den bliver ikke ét nummer større for hver indtastning op til size="100" ...
Avatar billede plazm Nybegynder
26. maj 2006 - 16:04 #7
tony, det står der heller ikke at den skal blive.
Læs spørgsmålet igen
Avatar billede Tony Juniormester
26. maj 2006 - 16:06 #8
OK plazm - Du har sikker ret, men jeg læser "Men den skal ikke bare blive fra 30 til 100.. men fks. 30, 31, 32, 33, 34, 35, 36..." som om den skal kravle deropad på baggrund af indtastninger, men måske spørger kunne kaste lidt lys over det ...
Avatar billede plazm Nybegynder
26. maj 2006 - 16:07 #9
"Jeg har et tekst input som der ikke skal være stor når makøren ikke er i den..
Altså når den ikke er i focus er den 30 i width..
men når man sætter makøren i skal den blive 100 i width.."

Dette læser jeg som onFocus og onBlur

"Men den skal ikke bare blive fra 30 til 100..
men fks. 30, 31, 32, 33, 34, 35, 36..."

Dette læser jeg som at den ikk bare skal hoppe derop, men flyde derop
Avatar billede liferocks Nybegynder
26. maj 2006 - 18:17 #10
netop plazm... og så vil jeg gerne vide hvad de forskellige ting gør :)

er netop nada god til javascript
Avatar billede liferocks Nybegynder
26. maj 2006 - 18:18 #11
Men den skal forblive 100 selv om man indtaster nogle tegn ;)
Avatar billede liferocks Nybegynder
26. maj 2006 - 18:28 #12
her er dit script plazm --->

    <script type="text/javascript">
var rsE = Array();   
function resize(elm,st,sl) {
  var l = rsE.length;
  rsE[l] = elm;
  if (elm.style.width == (st+"px")) {
    for(i=1 ; (Math.ceil(sl/10) - Math.ceil(st/10))>=i; i++) {
      newWidth = eval(st + i*10)+'px';
      setTimeout("rsE["+l+"].style.width = '"+newWidth+"';", i*15);
    }
  } else {
    for(i=1 ; (Math.ceil(sl/10) - Math.ceil(st/10))>=i; i++) {
      newWidth = eval(sl - i*10)+'px';
      setTimeout("rsE["+l+"].style.width = '"+newWidth+"';", i*15);
    }
  }
}
    </script>

Men forklar mig så hvad der sker :) Hvad gør det forskellige :)?
Avatar billede Tony Juniormester
26. maj 2006 - 18:28 #13
Det var godt, så er plazm's løsning jo godt på vej :-)
Avatar billede liferocks Nybegynder
26. maj 2006 - 18:38 #14
Jep.. nu vil jeg bare gerne hvad hvad der sker i scriptet ? :)

Håber i har tid til at forklarer mig det da jeg prøver at blive god til Javascript :)
Avatar billede plazm Nybegynder
27. maj 2006 - 01:33 #15
Det der sker et at der bliver sat et antal timere som bliver trigget efter forskellige intervaller med et spring på 15ms. Timerne sætter så størrelsen på inputboksen så det bliver en glidende effekt.

Måden den finder ud af om den skal rulle op eller ned er tjekket om størrelsen er lig starten.
Avatar billede liferocks Nybegynder
27. maj 2006 - 15:44 #16
Tak skal du have plazm :)

de 200 point går til dig :)
Avatar billede plazm Nybegynder
27. maj 2006 - 17:56 #17
Du tager lige nogle retur!
http://www.eksperten.dk/spm/712150
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