Avatar billede jonasaarhus Nybegynder
14. juni 2003 - 15:05 Der er 10 kommentarer og
1 løsning

Skifte linktextfarve og baggund i min a href

Jeg har en mnue hvor jeg gerne vil have en menu hvor der skiftes farve på text og baggrund.
Jeg har fundet det her javascript og modificeret det lidt.
Det fungerer på texten men kun delvist på baggrunden. Det vil ikke skifte tilbage til transparent igen :-(

foer = null;

    function activecolor(lnk) {
        if (foer)
            foer.style.color = "#246374";
            lnk.style.color = "#FFF";
            foer = lnk;
        }

    function activebg(lnk) {
        if (foer)
            foer.style.background = "transparent";       
            lnk.style.background = "#246374";
            foer = lnk;
        }


<a href="demo.html" target="content" title="DEMO" onClick="activecolor(this); activebg(this);" id="1" style="color: #246374; background: transparent;">DEMO</a>
Avatar billede roenving Novice
14. juni 2003 - 15:12 #1
Har du prøvet med ?-)

    function activebg(lnk) {
        if (foer)
            foer.style.backgroundColor = "transparent";       
            lnk.style.backgroundColor = "#246374";
            foer = lnk;
        }
Avatar billede roenving Novice
14. juni 2003 - 15:15 #2
Skifte tilbage ?o]

Du har da ingen kode, som resetter farven i det der ??
Avatar billede jonasaarhus Nybegynder
14. juni 2003 - 15:19 #3
Hvis jeg skal være helt ærlig så fatter jeg ikke helt det script der. Det er som sagt et jeg har fundet, så jeg er ikke selv forfatter.

Men det ser altså ud til at "resette" på text farven, bare ikke på baggrundsfarven.

Der er meget meget mærkeligt!
Avatar billede roenving Novice
14. juni 2003 - 15:56 #4
Jeg fik den ihvertfald til at virke på denne måde:

<a href="#" target="content" title="DEMO" onmouseover="this.style.backgroundColor='#246374';this.style.color='#fff';" onmouseout="this.style.backgroundColor='transparent';this.style.color='#246374'" id="a1" NAME="a1" style="color: #246374; background: transparent;">DEMO</a>
Avatar billede jonasaarhus Nybegynder
14. juni 2003 - 16:02 #5
Du kan prøve at se det på http://www.madsfind.dk/surfoffice

Jeg vil jo gerne have at det er onClick og ikke onMouseOver :-(
Avatar billede roenving Novice
14. juni 2003 - 16:04 #6
Jamen, så slet ordet onmouseover og indsæt onclick i stedet !
Avatar billede roenving Novice
14. juni 2003 - 16:05 #7
-- men behold onmouseout !o]
Avatar billede jonasaarhus Nybegynder
14. juni 2003 - 16:08 #8
Pointen er at det ikke er en hover markering, men en markering der skal varer indtil man trykker på noget nyt.
Så man kan se hvor man er på siden.
Avatar billede roenving Novice
14. juni 2003 - 16:19 #9
Argh ...

Du har det som to funktioner og allerede i den første funktion overtager foer jo henvisningen til det aktive, så:

function active(lnk) {
        if (foer){
            foer.style.color = "#246374";
            foer.style.backgroundColor = "transparent";
        }
        lnk.style.color = "#FFF";
        lnk.style.backgroundColor = "#246374";
        foer = lnk;
        }

og:

<a href="demo.html" target="content" title="DEMO" onClick="active(this)" id="a1" style="color: #246374; background: transparent;">DEMO</a>

bemærk iøvrigt, at jeg har sat et bogstav på id'et, for hvis du får brug for det i en javascript-sammenhæng, må det ikke starte med et tal ...

hth
jes '-)
Avatar billede jonasaarhus Nybegynder
14. juni 2003 - 16:34 #10
Tusind tak.
Det var sgu fedt...
Avatar billede roenving Novice
14. juni 2003 - 16:40 #11
Jamen velbekomme ...
-- og tak for points ;~}
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