Avatar billede ripley Nybegynder
19. september 2006 - 13:35 Der er 3 kommentarer og
1 løsning

JavaScript - mouseover - HJÆLP

Jeg har følgende javascript ... jeg vil gerne at det ved mouse-over er sådan, at skriften bliver hvid. Kan nogen hjælpe?
Jeg kan simpelthen ikke finde ud af, hvordan jeg skal gribe det an !!!


var oActiveTable = {
    gemtColor : new Array(),
    // hardwired styles for max perfomance
    aHover         : [ "#006699", "#FFFFFF" ],
   
    mInit : function () {
        if (typeof aMouseOver=="object"){oActiveTable.aHover=aMouseOver;}
        // collect active tables
        var aTables = document.getElementsByTagName ( "table" );
        var oTable, i = 0;
        while ( oTable = aTables.item ( i++ )) {
            if ( oTable.className.indexOf("mouseoverActive")>-1 ) {
                oTable.onmouseover     = oActiveTable.mCheck;
                oTable.onmouseout      = oActiveTable.mCheck;
                oTable.onmousedown     = oActiveTable.mCheck;

            }
        }
    },
    mCheck : function ( e ) { // check mouse action
        var e = e ? e : window.event;
        var oNode = e.target ? e.target : e.srcElement;
        while ( oNode.nodeName.toLowerCase () != "tr" &&  oNode.nodeName.toLowerCase () != "table" ) oNode = oNode.parentNode;
       
        if ( oNode.nodeName.toLowerCase () == "table" ) return;
        else var oRow = oNode;
       
        oActiveTable.mUpdate ( oRow, e.type == "mouseover" ? "over" : "out" );
       
    },
    mUpdate : function ( oRow, sAction ) { // update display
        var update = function ( oCell, aColors ) {
            oCell.style.backgroundColor = aColors [ 0 ];
            oCell.style.color = aColors [ 1 ];
        }
        var gem = function ( oCell, aGemaColors,nr ) {
            if (aGemaColors[nr]==null){
                aGemaColors[nr]=new Array(2);
            }
            aGemaColors[nr][ 0 ] = oCell.style.backgroundColor;
            aGemaColors[nr][ 1 ] = oCell.style.color;
        }
        var i = 0, oCell, aColors, aCells = oRow.getElementsByTagName ( "td" );
        while ( oCell = aCells.item ( i )) {
            switch ( sAction ) {
                case "over" :
                                    gem    (oCell, oActiveTable.gemtColor, i);
                    update ( oCell, oActiveTable.aHover );
                    break;
                case "out" :
                    update ( oCell, oActiveTable.gemtColor[i]);
                    break;
            }
            i++;
        }

    }
}

SafeAddOnload(oActiveTable.mInit);
Avatar billede olebole Juniormester
20. september 2006 - 15:03 #1
<ole>

Hvad er det, du gerne vil ... til hvad og hvordan vil du bruge det?

/mvh
</bole>
Avatar billede ripley Nybegynder
04. oktober 2006 - 10:28 #2
Hej igen!

Nu har jeg prøvet at lave koden i ét hug, så du måske bedre forstår det.

Mit problem er at den TD der indeholder et <A>-tag ikke har hvid skrift .. kan jeg style mig ud af det / skrive javascriptet om?

<HTML>
<Head>
<Script language="javascript">
    aMouseOver=["#006699", "#FFFFFF"];
    aMouseSelected=[ "#F1861E", "#FFFFFF" ];
   
var gSafeOnload = new Array();
function SafeAddOnload(f)
{
    window.onload = SafeOnload;
    gSafeOnload[gSafeOnload.length] = f;
}
function SafeOnload()
{
    for (var i=0;i<gSafeOnload.length;i++){
        gSafeOnload[i]();
       
    }
}

    var oActiveTable = {
    gemtColor : new Array(),
    // hardwired styles for max perfomance
    aHover        : [ "#006699", "#FFFFFF" ],
   
    mInit : function () {
        if (typeof aMouseOver=="object"){oActiveTable.aHover=aMouseOver;}
        // collect active tables
        var aTables = document.getElementsByTagName ( "table" );
        var oTable, i = 0;
        while ( oTable = aTables.item ( i++ )) {
            if ( oTable.className.indexOf("mouseoverActive")>-1 ) {
                oTable.onmouseover    = oActiveTable.mCheck;
                oTable.onmouseout      = oActiveTable.mCheck;
                oTable.onmousedown    = oActiveTable.mCheck;

            }
        }
    },
    mCheck : function ( e ) { // check mouse action
        var e = e ? e : window.event;
        var oNode = e.target ? e.target : e.srcElement;
        while ( oNode.nodeName.toLowerCase () != "tr" &&  oNode.nodeName.toLowerCase () != "table" ) oNode = oNode.parentNode;
       
        if ( oNode.nodeName.toLowerCase () == "table" ) return;
        else var oRow = oNode;
       
        oActiveTable.mUpdate ( oRow, e.type == "mouseover" ? "over" : "out" );
       
    },
    mUpdate : function ( oRow, sAction ) { // update display
        var update = function ( oCell, aColors ) {
            oCell.style.backgroundColor = aColors [ 0 ];
            oCell.style.color = aColors [ 1 ];
        }
        var gem = function ( oCell, aGemaColors,nr ) {
            if (aGemaColors[nr]==null){
                aGemaColors[nr]=new Array(2);
            }
            aGemaColors[nr][ 0 ] = oCell.style.backgroundColor;
            aGemaColors[nr][ 1 ] = oCell.style.color;
        }
        var i = 0, oCell, aColors, aCells = oRow.getElementsByTagName ( "td" );
        while ( oCell = aCells.item ( i )) {
            switch ( sAction ) {
                case "over" :
                                    gem    (oCell, oActiveTable.gemtColor, i);
                    update ( oCell, oActiveTable.aHover );
                    break;
                case "out" :
                    update ( oCell, oActiveTable.gemtColor[i]);
                    break;
            }
            i++;
        }

    }
}
SafeAddOnload(oActiveTable.mInit);
</script>
</head>
<BODY>
<table width="100%" cellspacing="0" cellpadding="0" border="0" class="mouseoverActive">
<tr>
<td><A href="">dette er en test</A></td><td>Her er noget skrift</td>
</tr>
</body>
</HTML>
Avatar billede ripley Nybegynder
06. oktober 2006 - 12:32 #3
Er der ingen, der kan hjælpe? ØV-ØV! :o(
Avatar billede ripley Nybegynder
18. oktober 2006 - 09:47 #4
Lukker spørgsmålet - se:
http://www.eksperten.dk/spm/737672
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