Philipp: Zeilen abwechselnd einfärben

hallo liebes forum,
ist es mithilfe von javascript möglich die zeilen einer tabelle automatisch in abwechselnder farbe einzufärben(hintergrundfarbe)?

die zeilen können von anwendern selber angefügt werden, d.h. also man müsste das script so schreiben, dass die zeilen automatisch eingefärbt werden. auch wenn man im nachhinein noch eine zeile oder mehr anfügt.

vielen dank für eure hilfe und mühe

Philipp

  1. Halo,

    die zeilen können von anwendern selber angefügt werden, d.h. also man müsste das script so schreiben, dass die zeilen automatisch eingefärbt werden. auch wenn man im nachhinein noch eine zeile oder mehr anfügt.

    Diese Funktion formatiert abwechselnd die geraden/ungeraden Reihen aller Tabellen im Dokument:

    function TRFarbe()
    {
      var tables,rows,i,j,farbe1,farbe2;

    farbe1="#F00";
      farbe2="#00C";
      tables=document.getElementsByTagName("table");

    for(i=0;i<tables.length;i++)
      {
        rows=tables[i].getElementsByTagName("tr");
        for(j=0;j<rows.length;j++)
        {
          if(j%2==0)tables[i].rows[j].style.backgroundColor=farbe1;
          else tables[i].rows[j].style.backgroundColor=farbe2;
        }
      }
    }

    Aufruf:
    <body onload="if(document.getElementsByTagName)TRFarbe()">

    Interessant ist dafuer kuenftig die neue CSS3-Pseudoklasse nth-child(), siehe: http://www.w3.org/TR/css3-selectors/#nth-child-pseudo.

    MfG, Thomas