Ergebnis 1 bis 5 von 5
  1. #1
    Avatar von .holger
    .holger ist offline Lounge-Member
    registriert
    22-04-2001
    Ort
    HB und Zw'ahn
    Beiträge
    5.789

    Jeden Tag / Jede Stunde neuen Text anzeigen

    In unserer heutigen JavaScript Stunde beschäftigen wir uns mit dem "Problem" zu einer bestimmten Zeit (sei es ein Tag, eine Stunde, eine Minute oder eine Sekunde) einen Text auszugeben.
    Das Problem ist recht einfach aus der Welt zu schaffen:

    Man muss sich nur das aktuelle Datum besorgen. Das macht man mit

    today = new Date();

    nun muss man sich überlegen wann der Text geändert werden soll (jeden Monat, jeden Tag, jeden Wochentag, Jede Stunde,...)

    dazu benutzen wir folgendes (aber nur eins davon):

    zeit = today.getMonth(); (für den Monat)
    zeit = today.getDate(); (für den Tag im Monat)
    zeit = today.getDay(); (für den Wochentag)
    zeit = today.getHour(); (für die Stunde)
    zeit = today.getMinutes(); (für die Minuten)
    zeit = today.getSeconds(); (für die Sekunden)

    nun brauchen wir noch ein Array mit den Texten die ausgegeben werden sollen (hier 7 Elemente - also jeden Wochentag was anderes):

    ausgabetext = new Array(
    "www.afriendlyworld.com ist cool",
    "Hallo Du da, wie gehts dir?",
    "Ich bin der beste bin der größte bin der schönste der erlöste ich bin ein w***** und ein schwein das alles kann ich sein",
    "www.holgerkrupp.de nur für dich",
    "bin ich Jesus oder bin ich schizophren?",
    "Berlin ist Pleite und jeder tut so als ob das ungewöhnlich wär",
    "ooops, hatte einen Text vergessen - waren nur 6");


    dann muss das ganze nur noch zusammen geführt und ausgegeben werden:

    document.write(ausgabetext[zeit]);

    tja, und das war's schon.

    Jetzt noch mal zum kopieren (für die Faulen unter uns):

    Code:
    <script language="JavaScript"> 
    <!-- 
    
    today = new Date(); 
    zeit = today.getDay();
    
    ausgabetext = new Array( 
    "www.afriendlyworld.com ist cool", 
    "Hallo Du da, wie gehts dir?", 
    "Ich bin der beste bin der größte bin der schönste der erlöste ich bin ein w***** und ein schwein das alles kann ich sein", 
    "www.holgerkrupp.de nur für dich", 
    "bin ich Jesus oder bin ich schizophren?", 
    "Berlin ist Pleite und jeder tut so als ob das ungewöhnlich wär",
    "ooops, hatte einen Text vergessen - waren nur 6");
    
    document.write(ausgabetext[zeit]);
    // --> 
    </script>
    Dieser Code ändert jeden Tag in der Woche den Text (also Montag ist ein anderer Text als Dienstag und ein anderer als Mittwoch,....) Den Code könnt ihr dann wie oben beschrieben abändern.

    Den ganzen Code könnt ihr dann genau an der Stelle im Quelltext, wo der Text erscheinen soll, eintragen.
    Geändert von Albu (20-01-2008 um 14:43 Uhr) Grund: zeit-1 ist Quatsch

  2. #2
    Avatar von Black_Mystics
    Black_Mystics ist offline Grünschnabel
    registriert
    07-09-2004
    Ort
    Emden
    Beiträge
    4

    AW: Jeden Tag / Jede Stunde neuen Text anzeigen

    Ich hab das nun so geschrieben, wie es oben steht wollte das aber für einen Monat machen. Hab da nun 31 Texte stehen... nun steht da aber undefinied. Läuft das nicht in einer Schleife und wenn nicht, wie macht man das so, dass es in einer läuft?

  3. #3
    Avatar von Soc
    Soc
    Soc ist offline Doppel-As
    registriert
    22-09-2004
    Ort
    Schweiz
    Beiträge
    115

    AW: Jeden Tag / Jede Stunde neuen Text anzeigen

    Zitat Zitat von Black_Mystics
    Ich hab das nun so geschrieben, wie es oben steht wollte das aber für einen Monat machen. Hab da nun 31 Texte stehen... nun steht da aber undefinied. Läuft das nicht in einer Schleife und wenn nicht, wie macht man das so, dass es in einer läuft?
    moin

    nein, das läuft nicht in einer schleife.
    brauchts auch nicht.
    wenn die seite aufgerufen wird, dann passiert folgendes:

    mit today = new Date(); wird eine neue variable vom typ Date initialisiert.
    bei zeit = today.getDay(); holt man den aktuellen Tag. also 1=Montag, 2=Dienstag, 3=Mittwoch...

    danach wird das ausgabearray mit dem inhalt gefüllt.

    und schlussendlich bei document.write(ausgabetext[zeit-1]); holt man das gewünschte raus.
    das heisst: heute ist montag. in zeit steht also 1 drin.
    da das array aber mit dem index 0 startet brauchts noch ein -1.
    am montag holen wir deshalb also den text an stelle 0 des ausgabearrays raus.

    falls du das ganze nun jeden tag im monat machen willst, dann brauchst du:

    zeit = today.getDate(); (für den Tag im Monat)

    ansonsten sollte alles beim alten bleiben.

    Soc

  4. #4
    Hucks ist offline Grünschnabel
    registriert
    26-11-2006
    Beiträge
    1

    AW: Jeden Tag / Jede Stunde neuen Text anzeigen

    öhm hallo....

    ich habe mal ne frage?

    Ich habe alles so weit Verstanden wie es beschrieben wurde.
    Funktioniert auch wunderbar.

    Nur meine frage ist:

    Wie kann man Die texte Minütlich pro Tag ausgeben?

    als nicht 60 minuten pro 1 stunde
    sondern 1440 minuten pro 24 stunden

    Geht das überhaubt?

  5. #5
    ein schlauer ist offline Lounge-Member
    registriert
    18-08-2004
    Beiträge
    14.671

    AW: Jeden Tag / Jede Stunde neuen Text anzeigen

    Das ist Blödsinn, getDay() startet bei Sonntag = 0, also nichts mit zeit - 1

    und die letzte Frage, dazu musst du einfach getMinutes() mit getHour() miulitplizieren und du brauchst in dem Fall natürlich eine Array mit 1440 Einträgen.

Lesezeichen

Berechtigungen

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