Avatar billede rthuls Nybegynder
09. juli 2004 - 19:33 Der er 5 kommentarer og
3 løsninger

skift egenskaber for inputfelt

Hvordan kan jeg skrifte kant- og baggrundsfarve på et inputfelt ved onmouseover, onmouseout, onclick og onblur?
Avatar billede medions Nybegynder
09. juli 2004 - 19:51 #1
Lav en global funktion der gør det.

<script language="JavaScript">
  function changeLook(what) {
    what.style.border = "1px;";
    what.style.borderColor = "#000000";
  }
</script>

<input type="text" name="tekstfelt" onmouseover="changeLook(this);" />

osv. osv.

//>Rune
Avatar billede rthuls Nybegynder
09. juli 2004 - 20:42 #2
Skal man så lave en funktion til hver action?

Kan man lave så hvis inputfeltet har focus, tilsidesættes de andre funktioner og når det så mister focus træder de i kraft igen?
Avatar billede medions Nybegynder
09. juli 2004 - 21:15 #3
Du siger blot:

<script language="JavaScript">
  function changeLook(what, act) {
    if (act == 1) {
      what.style.border = "1px;";
      what.style.borderColor = "#000000";
    }

    if (act == 2) {
      what.style.border = "1px;";
      what.style.borderColor = "#ff0000";
    }
  }
</script>

<input type="text" name="tekstfelt" onmouseover="changeLook(this, 1);" onmouseout="changeLook(this, 2);" />

//>Rune
Avatar billede roenving Novice
10. juli 2004 - 14:25 #4
>>rthuls

Sagtens, og du kan f.eks. se en fokusting her: http://roenving.users.whitehat.dk/WD3Input.html
Avatar billede rthuls Nybegynder
10. juli 2004 - 17:24 #5
Så fandt jeg ud af det. Det blev en god blanding af begge jeres svar:

<script language="JavaScript">
var status;
function changeLook(t, a) {
    //onmouseover
    if (a == 1) {
        if(status != 3){
            t.style.color='#666';
            t.style.border='1px solid #666';
            t.style.backgroundColor = "#fff";
            status = 1;
        }
    }
    //onmouseout
    if (a == 2) {
        if(status != 3){
            t.style.color='#666';
            t.style.border='1px solid #999';
            t.style.backgroundColor = "#efefef";
            if(t.value=='')t.value=t.defaultValue;
            status = 2;
        }
    }
    //onfocus
    if (a == 3) {
        t.style.color='#333';
        t.style.border='1px solid #666';
        t.style.backgroundColor = "#fff";
        if(t.value==t.defaultValue)t.value='';
        status = 3;
    }
    //onblur
    if (a == 4) {
        t.style.color='#666';
        t.style.border='1px solid #999';
        t.style.backgroundColor = "#efefef";
        if(t.value=='')t.value=t.defaultValue;
        status = 4;
    }
}
</script>


Og:

<input id="minInput" name="minInput" type="text" value="Kopier koden fra nedenunder" onmouseover="changeLook(this,1);" onmouseout="changeLook(this,2);" onfocus="changeLook(this,3);" onblur="changeLook(this,4);">


roenving >> vil du ligge et point, så kan i dele?
Avatar billede roenving Novice
10. juli 2004 - 17:29 #6
Velbekomme '-)
Avatar billede rthuls Nybegynder
10. juli 2004 - 17:57 #7
Tak for hjælpen til jer begge!
Avatar billede roenving Novice
11. juli 2004 - 12:19 #8
-- og tak for point ;~}
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