Ergebnis 1 bis 3 von 3
  1. #1
    Avatar von jspit
    jspit ist offline Lounge-Member
    registriert
    19-06-2009
    Beiträge
    1.712

    CSS-Style ab bestimmten Datum ändern

    Das Aussehen eines Elementes soll ab einen bestimmten Datum geändert werden, z.B. die Schriftfarbe grau oder das Element soll ausgeblendet werden.
    Da diese Aufgabe öfter mal besteht, hab ich die function SetClassAfter() mal geschrieben, welche die CSS-Class eines HTML-Elementes ändert wenn ein vorgegebenes Datum überschritten wird.

    Für jedes Element werden 2 Styles benötigt:

    PHP-Code:
    <style type="text/css">
    .
    vordatum font:bold 16px Arialcolor#000000;}
    .nachdatum font:bold 16px Arialcolor#AFAFAF;}
    </style
    und javascript:

    PHP-Code:
    <script type="text/javascript">
    function 
    SetClassAfter(elementId,NewClass,aDay,aMonth,aYear)
    {
    var 
    heute = new Date();
    var 
    vdatum = new Date(aYear,aMonth-1,aDay);
    if(
    heute.getTime() > vdatum.getTime())document.getElementById(elementId).className NewClass;
    }
    function 
    load() {
    SetClassAfter("t1605","nachdatum",16,5,2009);
    }
    </script> 
    Etwas html als Beispiel:

    PHP-Code:
    <body onload="load()">
    <
    tr id="t1605" class="vordatum">
      <
    td>Sonnabend16.05.2009</td>
      <
    td>09:00 Uhr</td>
      <
    td>- 12:00</td>
    </
    tr
    Im Beispiel erscheint der Termin nach dem 16.05.2009 nur noch schwach grau.
    Durch die Verwendung von CSS-Klassen ist die Freiheit in Bezug auf das Aussehen der Elemente vor und nach dem Stichtag fast unbegrenzt.

    jspit
    Geändert von jspit (27-11-2009 um 17:29 Uhr) Grund: Tippfehler im code: onLoad

  2. #2
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.751

    AW: CSS-Style ab bestimmten Datum ändern

    Ich würde das ja serverseitig ändern (also z.B. mit PHP in der CSS-Datei), damit wirklich jeder Besucher der Seite es gleich angezeigt bekommt. Auch würde damit nach dem Fertigladen der Seitenstil sich nicht mehr ändern (wenn man z.B. ein sehr großes Bild in der Seite hat tritt die Änderung erst ein, wenn dieses geladen ist).
    Aber vom Grundgedanken ne schöne Sache...

  3. #3
    Avatar von jspit
    jspit ist offline Lounge-Member
    registriert
    19-06-2009
    Beiträge
    1.712

    AW: CSS-Style ab bestimmten Datum ändern

    Zitat Zitat von kkapsner Beitrag anzeigen
    Ich würde das ja serverseitig ändern (also z.B. mit PHP in der CSS-Datei), damit wirklich jeder Besucher der Seite es gleich angezeigt bekommt. Auch würde damit nach dem Fertigladen der Seitenstil sich nicht mehr ändern (wenn man z.B. ein sehr großes Bild in der Seite hat tritt die Änderung erst ein, wenn dieses geladen ist).
    Alles richtig. Ich habe aber leider nur ein Billig-Hompageplatz ohne PHP und muß javascript teilweise so richtig ausreizen.
    Wenn der Funktionsaufruf nicht mit dem onload() ausgeführt wird, sondern gleich hinter dem Element eingefügt wird, sollte es auch gleich zur Wirkung kommen.
    Ganz verspielte Gesellen können noch ein setTimeout() einbauen.

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 08-08-2009, 13:40
  2. Zum bestimmten Datum einen Text anzeigen, Text aus Textdatei
    Von DanielKlaus24 im Forum JavaScript
    Antworten: 2
    Letzter Beitrag: 11-04-2008, 19:14
  3. Antworten: 1
    Letzter Beitrag: 08-10-2006, 13:26
  4. css style einer bestimmten css datei ändern
    Von Wu-mc im Forum JavaScript
    Antworten: 11
    Letzter Beitrag: 15-09-2006, 12:22
  5. Link nur zu bestimmten Datum öffnen
    Von littleBeginner im Forum JavaScript
    Antworten: 3
    Letzter Beitrag: 19-12-2004, 14:07

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •