Reinhard: Webseiten Hintergrundfarbe um x Uhr ändern

Beitrag lesen

Hey,

var body = document.getElementsByTagName('body')[0];

Hast du was an document.body auszusetzen?

//Vergleich:
if (h > 6 && h < 22) {
   // …
} else {
   // …
}

Ich vermute mal, das ist die Stelle, an der die Farbe umgeschaltet werden soll. Macht also wenig Sinn, das so umzusetzen. Eine Funktion wäre hier wohl angebracht, wie du hier bereits erwähnst:

document.onload=nachtschalter();

Aber bitte mit addEventListener() und – vor allem – ohne die Klammern, ich hatte erwartet, das sei dir bekannt.

window.setTimeout(nachtschalter, 60000);

Und so macht auch setTimeout() eher keinen Sinn, es wäre doch reichlich eigenartig, erneut ein immer gleiches Timeout in der Funktion selbst zu setzen. setInterval() ist dein Freund – wenn du es so machen willst. Möglicherweise wäre es eleganter zu berechnen, wieviel Zeit bis zur gewünschten Uhrzeit noch verbleibt, dann spräche auch nichts dagegen, setTimeout() innerhalb der Funktion wieder neu zu berechnen.

Reinhard