Avatar billede rthuls Nybegynder
03. april 2003 - 14:06 Der er 10 kommentarer og
1 løsning

rollOver på link

Hvordan laver man dynamisk rollOver effekt (farve skift) på links? Macromedia bruger det f.eks på deres side:

http://www.macromedia.com/cfusion/tdrc/index.cfm#loc=en_us&view=snTDRCFinish&viewName=Downloads&product=flash&lc_id=38107 (oppe hvor der står home / downloads /)
Avatar billede Slettet bruger
03. april 2003 - 14:08 #1
bruger du MX? hvis du gør så læs tutorials i programmet!
Avatar billede Slettet bruger
03. april 2003 - 14:11 #2
er det sådan her du mener? www.westhi.dk/knap.swf

for så kan jeg prøve at forklare dig det..
Avatar billede rthuls Nybegynder
03. april 2003 - 14:11 #3
Jeg ved godt hvordan man laver rollOver normalt. Her tænker jeg på dynamisk html formateret tekst som bliver hentet ind fra en database.
Avatar billede Slettet bruger
03. april 2003 - 14:26 #4
hvorfor skrev du det så ikke?? :S
Avatar billede rthuls Nybegynder
03. april 2003 - 14:31 #5
det troede jeg også at jeg havde gjort :o)
Avatar billede mat Nybegynder
03. april 2003 - 20:26 #6
måske sådan her:

createEmptyMovieClip("m", 10);
m.onLoad = function() {
    this.createTextField("t", 100, 0,0,100, 20);
    this.t.text = "eksperten";
    this.t.textColor = "0x000000";
    this.onRollOver = function() {
        this.t.textColor = "0xFF0000";
    }
    this.onRollOut = function() {
        this.t.textColor = "0x000000";
    }
}
m.onLoad();


mvh mat :)
Avatar billede rthuls Nybegynder
04. april 2003 - 09:42 #7
Ja, det er noget af det rigtige du har fat i der Mat. Kan det på en eller anden uspekuleret måde lave det så det kun gælder for tekst der står inde i et <a href> tag?

createEmptyMovieClip("m", 10);
m.onLoad = function() {
    this.createTextField("t", 100, 25, 25, 0, 0);
    with (this.t) {
        autosize = true;
        selectable = false;
        html = true;
        htmlText = "<font face=\"verdana\" size=\"12\" color=\"#000000\"><a href=\"http://www.eksperten.dk\" target=\"_blank\">eksperten</a> er sej</font>";
    }
    this.onRollOver = function() {
        this.t.textColor = "0xff0000";
    };
    this.onRollOut = function() {
        this.t.textColor = "0x000000";
    };
};
m.onLoad();
Avatar billede mat Nybegynder
07. april 2003 - 19:26 #8
Ja det kan det sikkert nok, men det virker som en lidt omstændig affære. For at fange et rollOver tror jeg at du skal bruge et movieclip (som i ovenstående), men eftersom det kun er dit link der skal highlightes skal det pakkes ind i sit eget movieclip. Så man skal til at klippe din streng i stykker og finde alle steder med en <a href> og substringe selve link-teksten.

Derudover har jeg prøvet at fange en onMouseOver med noget javascript, men det kunne jeg ikke få til at virke (men det ændrer vel heller ikke på at "eksperten" skal sepereres fra resten af strengen) :/

Det er så langt min fantasi rækker lige nu.

mvh mat
Avatar billede burns Nybegynder
14. april 2003 - 22:25 #9
Hey rthuls(det skulle vel aldrig være Tulle fra MDU? :o) ),

Har du fundet ud af det? Jeg har prøvet at skrive en funktion der kan hive teksten der står inde i et <a href> tag ud. Det den gør er at fange teksten mellem <a> og </a>, f.eks: <a href="url">Denne tekst bliver hevet ud af funktionen</a>.

Line nu tracer den bare de værdier den hiver ud, men du kan samle dem op i et array eller hvad du nu har lyst til.

Paste funktionen ind i frame 1 i en tom flashfil og test:

tekst = "<html><head><title>Test af html stripper</title><body><a href=\"test.php\">Dette er et link</a> Og så noget mere tekst <a href=\"bla2\">Og et link til</a> og til slut noget tekst og et <a href=\"link goes here\" >Sidste link</a>";

function stripHrefs(tekst) {
    var startSted = 1;
    var antal = 0;
    var opsamler = "";
    var subSoegning;
    var startSted;
    var antal;
       
    for (i=0; i < 100; i++) {
        subSoegning = tekst.indexOf("</a>", startSted);
        startSted = subSoegning + 1;
        if (subSoegning != -1) {
            _root["substart" + antal] = subSoegning;
            antal++;
        }
        else {
            break;
        }
    }
   
    for (i=0; i <= antal; i++) {
        for (a=0; a < 50; a++) {
            if (tekst.charAt(_root["substart" + i] - a - 1) != ">") {
                _root["opsamler" + i] += tekst.charAt(_root["substart" + i] - a - 1);
            }
            else {
                break;
            }
        }
    }

    for (a=0; a < antal; a++) {
        for (i=0; i <= _root["opsamler" + a].length; i++) {
            _root["ordvender" + a] += _root["opsamler" + a].charAt(_root["opsamler" + a].length - i);
        }
    }
   
    for (a=0; a < antal; a++) {
        trace(_root["ordvender" + a])
    }

}

stripHrefs(tekst);
Avatar billede rthuls Nybegynder
13. juni 2004 - 23:46 #10
burns, smider du et svar?
Avatar billede burns Nybegynder
14. juni 2004 - 13:41 #11
Yeps, værsgo ;)
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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