• Wieder einmal haben uns unsere Apfeltalker tolle Fotos zur Abstimmung eingesandt. Welches ist Euer Favorit? Stimmt mit ab! Hier geht es zur Abstimmung --> Klick
  • Es ist bereits Apfeltalk-Tradition und wir möchten sie auch in diesem Jahr fortsetzen: Unser Apfeltalk-Weihnachtslogo-Wettbewerb hat begonnen! Gestaltet für uns das Weihnachtsbanner, das im Monat Dezember bis zum Weihnachtsfest unsere Webseite schmücken soll. Lasst Eurer Kreativität freien Lauf! Hier geht es zum Wettbewerb --> Klick

background soll sich nach Uhrzeit richten

vcr80

Gestreifter Böhmischer Borsdorfer
Registriert
06.11.08
Beiträge
3.403
hy!

habe Probleme mit dem folgenden Script.
Es soll die Uhrzeit und das Datum auslesen und dann in gewissen Zeiträumen andere background-images setzen. Leider tut es Letzteres nicht, vielleicht kann mir da jemand helfen, danke!

Code:
<script Language="JavaScript">
<!-- vor alten Browsern verstecken

var ZeitString, DatumsString = "";

function ZeitDatum () {
        Jetzt = new Date();
       
        // aktuelles Datum
        Tag = Jetzt.getDate();
        Monat = Jetzt.getMonth()+1;
        
		Jahr = Jetzt.getFullYear();
        DatumsString = Tag;
        DatumsString += ((Monat<10) ? ".0" : ".") + Monat;
        DatumsString += "." + Jahr;
        document.Uhr.Datum.value = DatumsString;

        //aktuelle Uhrzeit
        Stunden = Jetzt.getHours();
        Minuten = Jetzt.getMinutes();
        Sekunden = Jetzt.getSeconds();
        ZeitString = Stunden;
        ZeitString += ((Minuten < 10) ? ":0" : ":") + Minuten;
        ZeitString += ((Sekunden < 10) ? ":0" : ":") + Sekunden;
        document.Uhr.Zeit.value = ZeitString;
		
	if (Stunden >= 5 && Stunden < 10){
			document.getElementById('day_time').style.background = "url(style/images/daytimes/morgen.jpg)"; 
		} else if (Stunden >= 10 && Stunden < 17){
			document.getElementById('day_time').style.background = "url(style/images/daytimes/tag.jpg)"; 
		} else if (Stunden >= 17 && Stunden < 21){
			document.getElementById('day_time').style.background = "url(style/images/daytimes/abend.jpg)"; 
		} else if (Stunden >= 21 && Stunden < 24){
			document.getElementById('day_time').style.background = "url(style/images/daytimes/night.jpg)"; 
		} else if (Stunden >= 0 && Stunden < 5){
			document.getElementById('day_time').style.background = "url(style/images/daytimes/night.jpg)"; 
		} else {
			alert("beep");
		}	
		
        setTimeout("ZeitDatum()", 1000);
}
// -->
</script>

Diese if-abfrage ist mehr oder weniger aus PHP portiert, weil ich javascript eigentlich nicht kann.
 
Zuletzt bearbeitet:
Es ist bestimmt nicht der Fehler, aber für welchen Wert soll folgende Bedingung erfüllt werden?

Code:
if (Stunde >= 21 && Stunde < 0){ ...


EDIT: Kennt javascript "elseif"? Sonst mach mal ein Leerzeichen zwischen "else" und "if"...
 
Habe nachgeschaut: bei Javascript gibt es kein "elseif" wie bei PHP. Einfach ein Leerzeichen einfügen...
 
Habe nachgeschaut: bei Javascript gibt es kein "elseif" wie bei PHP. Einfach ein Leerzeichen einfügen...

hat nicht ganz geholfen. jetzt wird die uhr zwar ausgeführt, das image wird aber trotzdem nicht verändert und das setTimeout ignoriert er auch...
 
hat nicht ganz geholfen. jetzt wird die uhr zwar ausgeführt, das image wird aber trotzdem nicht verändert und das setTimeout ignoriert er auch...

Ich hab's: Du hast zwar eine Variable "Stunden" angelegt, aber fragst eine "Stunde" ab...
 
Ich hab's: Du hast zwar eine Variable "Stunden" angelegt, aber fragst eine "Stunde" ab...

du wirst lachen! ich bin grad auf genau das selbe gekommen!
danke trotzdem! ich werds gleich ausbessern!
 
juchui danke es geht!

sobald ich kann, gibts karma!