Text in HTML / JavaScript zu bestimmter uhrzeit

4 Antworten

Nehmen wir mal an, du hast irgendwo auf deiner Website folgenden HTML Code:

<div id="foo">bla bla bla</div>

Dann könntest du nach dem Laden deiner Seite folgenden JavaScript Code ausführen (ich hoffe, du weißt, wie man so etwas richtig macht):

var h = new Date().getHours();

var e = document.getElementById("foo");

if (h <= 1) { // zwischen 00:00 und 01:00 Uhr

e.innerHTML = "a";

} else if (h <= 2) { // zwischen 01:01 und 02:00 Uhr

e.innerHTML = "b";

} else if (h <= 3) { // zwischen 02:01 und 03:00 Uhr

e.innerHTML = "c";

} else { // zwischen 03:01 und 23:59 Uhr

e.innerHTML = "d";

}

Anstatt "innerHTML" solltest du allerdings vernünftige DOM-Methoden benutzen, oder gleich eine Library einsetzen! (Ich habe das jetzt nur aus Platzmangel mit innerHTML gemacht ... sollte man aber in der Praxis vermeiden!)

Um Probleme mit Internationalen Besuchern zu vermeiden, könntest du auch "getTimezoneOffset()" vom Date-Objekt benutzen, oder mit "Date.UTC()" arbeiten. Dann bekommen weltweit immer alle User die gleiche Anzeige, egal wo sie sich auf der Welt befinden.


Klexxsy  10.12.2021, 06:06

Hey. Könntest Du mir kurz zeigen wie der Code aussehen sollte wenn man zwischen 3 Uhr und 12 Uhr => Morgen, zwischen 12 Uhr und 17 Uhr => Tag, zwischen 17 Uhr und 3 Uhr wieder => Abend stehen hat?

0

Ich würde das eher mit PHP lösen (ist Performanter und v.a. einfacher)

<?
# Timestamp:
$timestamp = time();
# Aktuelle Uhrzeit nur in Stunden:Minuten
$uhrzeit = date("H:i",$timestamp);

# Die Abfrage:
if(($uhrzeit >= "01:00" && $uhrzeit <= "02:00") ||  $uhrzeit >= "04:00" && $uhrzeit <= "05:00")){
echo "Ja"; 
}else if(($uhrzeit >= "02:00" && $uhrzeit <= "04:00") ||  $uhrzeit >= "05:00" && $uhrzeit <= "08:00")){echo "Nein";
}

?>

LG Lukas ;-)


verreisterNutzer 
Fragesteller
 19.03.2015, 18:52

Leider bekomme ich es nicht hin, weil von PHP hab ich noch keine ahnung

0
nintendoluk  24.03.2015, 15:26
@verreisterNutzer

Du musst deine Datei auf ".php" enden lassen (statt ".html")

Zudem muss dein Webhoster / Server PHP Interpretieren können. Ich empfehle da den Apache Server (der ist zB. bei XAMPP gleich dabei). Oder als kostenlose Webhoster sind boxhost und bplaced nicht schlecht.

Meinen Code musst du dann einfach nur an der stelle einfügen, an der "Ja" oder "Nein" angezeigt werden soll.

0

Du könntest dir folgende Funktionen modifizieren:

function Main()
{
var jetzt = new Date();
var Std = jetzt.getHours();
if((Std>=6)&&(Std<=11))
Log("Guten Morgen")
else if((Std>=12)&&(Std<=17))
Log("Guten Tag")
else if((Std>=18)&&(Std<=22))
Log("Guten Abend")
else
Log("Gute Nacht");
}
function Log(sText)
{
$("#divOut").append(sText + "\n");

}

Woher ich das weiß:Berufserfahrung – Programmierer

Ja kann man. 

Da die Frage aber nicht lautete, "Wie kann man zu bestimmten Uhrzeiten anderen Text einblenden mit HTML/JavaScript?", verrate ich dir nicht wie ;)

Netterweise gebe ich dir eine Stichwortlist nach der du googlen kannst:

javascript time, javascript text einblenden