Avatar billede hedegaard1 Nybegynder
07. december 2002 - 18:35 Der er 10 kommentarer og
1 løsning

Fade effekt på hyperlinks

Er der en der kan hjælpe med en kode til at lave en fade effekt, som den der er på www.divxstation.com link??????
Avatar billede boris Mester
07. december 2002 - 18:50 #1
Den kaldes FADE SCRIPT V 3.1
Du kan finde den ved at downloade javascriptet.
http://divxstation.com/js/js.js
Avatar billede somaliomar Praktikant
07. december 2002 - 18:53 #2
function setStyleById(i, p, v) {
    var n = window.document.getElementById(i);
    n.style[p] = v;
}

    /************** FADE SCRIPT V 3.1 *******************/

    var fadeColor = "#FF6500";
    var stepIn = 16;
    var stepOut = 500;

    autoFade = true; 
    sloppyClass = false;
    macCompat = false;

    hexa = new makearray(16);
    for(var i = 0; i < 10; i++)
        hexa[i] = i;
    hexa[10]="a"; hexa[11]="b"; hexa[12]="c";
    hexa[13]="d"; hexa[14]="e"; hexa[15]="f";
   
    document.onmouseover = domouseover;
    document.onmouseout = domouseout;
   
    fadeColor = dehexize(fadeColor.toLowerCase());
   
    var fadeId = new Array();
   
    function dehexize(Color){
        var colorArr = new makearray(3);
        for (i=1; i<7; i++){
            for (j=0; j<16; j++){
                if (Color.charAt(i) == hexa[j]){
                    if (i%2 !=0)
                        colorArr[Math.floor((i-1)/2)]=eval(j)*16;
                    else
                        colorArr[Math.floor((i-1)/2)]+=eval(j);
                }
            }
        }
        return colorArr;
    }
   
    function domouseover() {
        if(document.all){
            var srcElement = event.srcElement;
            if ((srcElement.tagName == "A" && autoFade && srcElement.className != "nofade") || srcElement.className == "fade" || (sloppyClass && srcElement.className.indexOf("fade") != -1)) {
                    if (!srcElement.startColor) {
                        srcElement.startColor = (srcElement.style.color)? srcElement.style.color: srcElement.currentStyle.color;
                        srcElement.startColor = dehexize(srcElement.startColor.toLowerCase());
                    }
                    var link = (macCompat? srcElement.name: srcElement.uniqueID);
                    if (link) fade(srcElement.startColor,fadeColor,link,stepIn);               
                    else if (macCompat) alert("Error: Mac Compatility mode enabled, but link has no name.");
            }
        }
    }
   
    function domouseout() {
        if (document.all){
            var srcElement = event.srcElement;
            if ((srcElement.tagName == "A" && autoFade && srcElement.className != "nofade") || srcElement.className == "fade" || (sloppyClass && srcElement.className.indexOf("fade") != -1)) {
                var link = (macCompat? srcElement.name: srcElement.uniqueID);
                if (link) fade(fadeColor,srcElement.startColor,link,stepIn);
            }
        }
    }
   
    function makearray(n) {
        this.length = n;
        for(var i = 1; i <= n; i++)
            this[i] = 0;
        return this;
    }
   
    function hex(i) {
        if (i < 0)
            return "00";
        else if (i > 255)
            return "ff";
        else
          return "" + hexa[Math.floor(i/16)] + hexa[i%16];
    }
   
    function setColor(r, g, b, element) {
          var hr = hex(r); var hg = hex(g); var hb = hex(b);
          element.style.color = "#"+hr+hg+hb;
    }
   
    function fade(s,e,element,step) {
        var sr = s[0]; var sg = s[1]; var sb = s[2];
        var er = e[0]; var eg = e[1]; var eb = e[2];
       
        if (fadeId[0] != null && fade[0] != element && eval(fadeId[0])) {
            var orig = eval(fadeId[0]);
            setColor(orig.startColor[0],orig.startColor[1],orig.startColor[2],orig);
            var i = 1;
            while(i < fadeId.length) {
                clearTimeout(fadeId[i]);
                i++;
            }
        }
           
        for(var i = 0; i <= step; i++) {
            fadeId[i+1] = setTimeout("setColor(Math.floor(" +sr+ " *(( " +step+ " - " +i+ " )/ " +step+ " ) + " +er+ " * (" +i+ "/" +
                step+ ")),Math.floor(" +sg+ " * (( " +step+ " - " +i+ " )/ " +step+ " ) + " +eg+ " * (" +i+ "/" +step+
                ")),Math.floor(" +sb+ " * ((" +step+ "-" +i+ ")/" +step+ ") + " +eb+ " * (" +i+ "/" +step+ ")),"+element+");",i*step);
        }
        fadeId[0] = element;
    }

    /************** FADE SCRIPT V 3.1 END *******************/

//-->
Avatar billede somaliomar Praktikant
07. december 2002 - 18:54 #3
Øv, for sent :)
Avatar billede somaliomar Praktikant
07. december 2002 - 18:54 #4
Det skulle være et svar!
Avatar billede boris Mester
07. december 2002 - 18:56 #5
Det var det jeg ikke ville gøre, for jeg mener ikke det respekterer copyright at kopiere hele scriptet ind her, hvorved man publicerer andres kode.
Det er til gengæld ok, hvis man studerer det og lader sig inspirere af det.

Vær lige opmærksom på, at det ikke duer i Netscape!
Avatar billede somaliomar Praktikant
07. december 2002 - 18:57 #6
Det har du nok ret i. Men jeg tror nu ikke at spørger ikke har tænkt sig at lave et script selv!
Avatar billede boris Mester
07. december 2002 - 18:59 #7
En kort forklaring er,at man fanger musehændelserne på linket og ved hjælp af Javascript ændrer fareværdien stepvis fra en farve til en anden.
Avatar billede boris Mester
07. december 2002 - 19:05 #8
Der er en helt principiel forskel på, om spørger lader sig inspirere af scriptet eller man via Eksperten publicerer det generelt.
Det må så være op til spørgerens samvittighed, i hvilket omfang man vil genbruge ideerne.
Jeg ville i hvertfald ikke synes, det var ok, hvis nogen på en hjemmeside gengav  en direkte kopi af et flere sider langt Javascript, jeg havde lavet.
Men nok om den sag.....
Avatar billede boris Mester
07. december 2002 - 19:08 #9
Lige fra Ekspertens regler:
Det er forbudt at
spørge efter eller poste indlæg der omhandler ulovlig kopiering eller downloading af ophavsretsligt beskyttet materiale.
Jeg ville tolke en større kildekode som hørende under dette.
Avatar billede somaliomar Praktikant
04. januar 2003 - 19:29 #10
Takker for points...
Avatar billede ddobbeltv Nybegynder
31. juli 2003 - 17:51 #11
man kan ikke have ophavsret på kode.. kun design ..
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