ChrisB: Onmouseover zentral definieren?

Beitrag lesen

Hi,

Ich hätte auch in CSS ein Mouseover gehabt, allerdings hieß es, das sei nicht kompatibel zu allen Browsern (css4you.de) - daher habe ich es hiermit versucht.

Der IE < 7 unterstuetzt :hover nur fuer Links, ja.
Aber aus Ruecksicht auf solch veraltete Browser das ganze mit JavaScript umzusetzen, wo es doch nur um einen optischen Effekt geht ...?

<td class="css-siehe-stylesheet" onmouseover="this.style.backgroundColor='#ededed'" onmouseout="this.style.backgroundColor='#fefefe'">inhalt</td>

Da ich diese Art einer td öfter machen möchte, wäre es von Vorteil, den Effekt zentral zu definieren und immer nur einen kurzen Verweis dahin zu geben (vor allem für spätere Farbänderungen etc.).

Per onload eine Funktion aufrufen, die alle TDs durchlaeuft (bspw. per getElementsByTagName), und dann die onmouseover/-out-Handlerfunktion dynamisch setzt.

{elementReferenz}.onmouseover = {funktionsreferenz};

Innerhalb der Funktion hast du dann ueber this Zugriff auf das Element.

Wenn du das dann nur fuer IE < 7 machst (dafuer bieten sich Conditional Comments oder Conditional Compilation an), und alle anderen Browser ueber CSS bedienst ... das waere doch fein.

MfG ChrisB