WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   [HTML] onmouseout in td-tags? (http://www.wcm.at/forum/showthread.php?t=98544)

moorhahn 31.05.2003 07:31

[HTML] onmouseout in td-tags?
 
folgende seite:
Testseite

wenn die maus über einem menüelement ist, sollte sich die jeweilige zelle verfärben, macht sie auch. beim verlassen der zelle sollte sie sich aber auch wieder zurückfärben, macht sie im IE5, aber im IE6 nicht mehr. habs in anderen browsern noch nicht ausprobiert.

kanns sein, das M$ beim IE6 das eventhandling teilweise dem netscape-standard angepasst? laut diesem dürfte man onmouseout nur in area- und a-tags verwenden. teilweise deswegen, weil onmouseover funktioniert, aber auch nur in area- und a-tags erlaubt wäre.

Pioneer 31.05.2003 07:33

In Opera färbt es sich auch nicht zurück.

moorhahn 31.05.2003 11:20

hab gerade probiert, den inhalt der javascript-funktion, die die zelle zurückfärbt, direkt ins onmouseout="" reinzuschreiben, da funktionierts. komisch.

renew 31.05.2003 11:40

Zitat:

Original geschrieben von moorhahn
hab gerade probiert, den inhalt der javascript-funktion, die die zelle zurückfärbt, direkt ins onmouseout="" reinzuschreiben, da funktionierts. komisch.
naja, des is a hund mit der Reference auf das Objekt.
Hab mich auch schon mal damit gespielt - und habs dann eigenltich immer folgendermaßen gelöst:

Code:

function mouseover2(nr)
{
        document.getElementsByTagName("td")[nr].bgColor = "#97F4A3";//#AEFFBB
}

function mouseout2(nr)
{
        document.getElementsByTagName("td")[nr].bgColor = "#CCFFCC";
}

Und dann hab ich im jeweiligen onmouseover/onmouseout im td-Tag die nr übergeben - was nicht sonderlich schwer war, da ich das ganze meist mit ASP generiert hab - und dort rennt einfach ein zähler der die aktuelle Nummer des td-Tags einträgt.
Sprich, das 1. td hat die Nr. 0 das 2. die Nr. 1 usw...

Ist zwar nicht so elegant wie mit "this", aber bis jetzt hats immer funktioniert. :)

moorhahn 31.05.2003 11:55

aber warum funktionierts im ie5 und im ie6 nicht mehr? ein bug?

mcs_ 31.05.2003 12:00

backgroundcolor im stylesheet festlegen, dann:

onMouseOver="this.style.backgroundColor='#000000'"

und:

onMouseOut="this.style.backgroundColor='#ffffff'"


hoffe, das funkt. :)

renew 31.05.2003 12:11

Zitat:

Original geschrieben von moorhahn
aber warum funktionierts im ie5 und im ie6 nicht mehr? ein bug?
des is gute Frage...

Aber wie schon gehört, in Opera funkts nicht und bei mir im Mozilla auch nicht.
Das heißt es funkt eigentlich nur im IE5. ;)

mcs_ 31.05.2003 12:15

im stylesheet natürlich für die td die backgroundcolour festlegen nicht vergessen.

und die code pieces direkt in den td tag einfügen.

snowman 31.05.2003 20:06

das kann man mit reinem css machen, braucht man kein javascript dafür.

gruss,
snowman

renew 31.05.2003 21:09

Zitat:

Original geschrieben von snowman
das kann man mit reinem css machen, braucht man kein javascript dafür.

gruss,
snowman

wie?

Da gibts doch keine "Subklassen", wie beim Anchor-Tag - oder doch?


Alle Zeitangaben in WEZ +2. Es ist jetzt 05:20 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag