Steffen Stundzig: CSS Stylesheet Eintrag per JavaScript tauschen

Hallo,

ich möchte in einer Tabellenzelle per JavaScript-Events onmouseover und onmouseout die Farben der Tabellenzelle ändern. Wenn ich direkt das 'background'-Attribut benutze funktioniert das auch super.

Aber da ich alle meine Farbangaben lieber in einer CSS-Datei auslagere, wollte ich nun bei den Mausevents das CSS-Stylesheet austauschen. Dazu habe ich mir im CSS einen Eintrag für 'td.plain' und 'td.plainhigh' gemacht.

Aber was muss ich nun in die Eventhandler schreiben, damit das auch ausgetauscht wird? Geht das überhaupt? Gibt es vielleicht noch andere Möglichkeiten, die Farben aus dem CSS lesen und damit doch das 'background'-Attribut zu nutzen?

Vielen Dank.

Steffen Stundzig

  1. hi

    this.classname="plainhigh" ändert z.B. die class des aktuellen Elementes.

    Grüße aus Bleckede

    Kai

  2. Tag auch

    Gibt es vielleicht noch andere Möglichkeiten, die Farben aus dem CSS lesen und damit doch das 'background'-Attribut zu nutzen?

    Ja gibt es.
    Du kannst auch dem Verweis selbst die Dimensionen der Tabellezelle aufschwatzen ...
    a {
    display:block;
    width:200px;
    height:50px;
    background:#ccc;
    etc.
    }
    ... und anschließend mittels a:hover die Hintergrundfarbe des Verweises ändern.

    Überflüssig zu erwähnen, daß Netscape 4.x daran scheitert - an der Zeile Javascript von Kai allerdings auch.

    Thomas J.