Zur Navigation

Uhrzeitchecker

1 KkKEvilKkK (Gast)

Hi Leute
ich habe folgendes Problem
ich will einen Textschreiben wenn die Computer zeit vor einer bestimmten Uhrzeit ist wie mach ich das ????

So habe ich mir gedacht aber das hat nicht funktioniert

(habe natürlich <head> <html> usw... nicht vergessen)


<script language="JavaScript">
<!--
var heute, offen
heute=0 //Das soll später dan das aktuelles Datum sein
offen1=0 //Das soll 9:00 sein
offen2=0 //Das soll 12:00 sein
offen3=0 //Das soll 15:00 sein
offen4=0 //Das soll 18:00 sein

for(i = 0;i<=11; i++) // wenn es nach 9:00 und vor 12:00 oder nach 15:00 und vor 18:00 ist doll fett in grün OFFEN STEHEN sonst rot und fett GESCHLOSSEN stehen wie macht man das ?????
{
for(a = 1; a<=31 ;a++)
{
if (heute.getTime() < offen1.getTime(2014,i,a,17))
{
document.write("GESCHLOSSEN")
}
}
}



//-->
</script>



Was kann ich machen ????

MfG
KkKEvilKkK

18.12.2013 16:35

2 Jörg Kruse

Ich würde es folgendermaßen versuchen:

<script type="text/javascript">
function shownotice() {
    var now = new Date();
    var hours = now.getHours();
    if ((hours >= 9 && hours < 12) || (hours >= 15 && hours < 18)) {
        var text = 'OFFEN';
        var color = 'green';
    } else {
        var text = 'GESCHLOSSEN';
        var color = 'red';
    }
    document.getElementById('notice').innerHTML = text;
    document.getElementById('notice').style.color = color;
}
window.setInterval('shownotice()',1000);
</script>

An der Stelle, wo das OFFEN bzw. GESCHLOSSEN angezeigt werden soll, muss dann dieses Div eingefügt werden:

<div id="notice" style="font-weight:bold"></div>

18.12.2013 17:28 | geändert: 18.12.2013 17:30

3 KkKEvilKkK (Gast)

Vielen Vielen Dank
MfG KkKEvilKkK

19.12.2013 16:31

4 KkKEvilKkK (Gast)

Kannst du mir bitte noch einstellen das Sonntags und samstags dauerhaftgeschlossensteht ?

19.12.2013 16:55

5 Jörg Kruse

Sollte so gehen:

<script type="text/javascript">
function shownotice() {
    var now = new Date();
    var hours = now.getHours();
    var dayOfWeek = now.getDay();
    if (
        (dayOfWeek > 0 && dayOfWeek < 6) &&
        ((hours >= 9 && hours < 12) || (hours >= 15 && hours < 18))
    ) {
        var text = 'OFFEN';
        var color = 'green';
    } else {
        var text = 'GESCHLOSSEN';
        var color = 'red';
    }
    document.getElementById('notice').innerHTML = text;
    document.getElementById('notice').style.color = color;
}
window.setInterval('shownotice()',1000);
</script>

Zu den Datumsfunktionen von JavaScript gibt es auf SELFHTML eine gute Übersicht:

http://de.selfhtml.org/javascript/objekte/date.htm

19.12.2013 17:06

6 KkKEvilKkK (Gast)

Und geht es an Feiertagen immer GESCHLOSSEN zu schreiben ??
Gib es da so ne art Online Tabell wo java checken kann ??

19.12.2013 18:00

7 Jörg Kruse

Manuell könntest du so vorgehen:

    var now = new Date();
    var hours = now.getHours();
    var dayOfWeek = now.getDay();
    var day = now.getDate();
    var month = now.getMonth() + 1;
    if (
        ! (month == 1 && day == 1) // Neujahr
        // ... etc. ...
        && ! (month == 12 && day == 25) // 1. Weihnachtstag
        && ! (month == 12 && day == 26) // 2. Weihnachtstag
        && (dayOfWeek > 0 && dayOfWeek < 6)
        && ((hours >= 9 && hours < 12) || (hours >= 15 && hours < 18))
    ) {

Müsstest du halt jährlich einmal aktualisieren, da ein Teil der Feiertage beweglich sind

Gib es da so ne art Online Tabell wo java checken kann ??

Wenn du mit der Suchmaschine nach "javascript feiertage" suchst, findest du Seiten, die eine Umrechnung umgesetzt haben. Da kannst du den Quelltext studieren, um zu sehen, wie die das gemacht haben. Dabei geht es nicht nur um bewegliche Feiertage, sondern auch um Länder / Bundesländer mit unterschiedlichen Feiertagsregelungen.

19.12.2013 22:19

8 KkKEvilKkK (Gast)

Warum Funkionier das dann nicht ?

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title></title>
<meta name="author" content="">
<meta name="editor" content="html-editor phase 5">
<script type="text/javascript">
function shownotice() {
    var hours = now.getHours();
    var dayOfWeek = now.getDay();
    var day = now.getDate();
    var month = now.getMonth() + 1;
    if (
        ! (month == 1 && day == 1) // Neujahr
        && ! (month == 12 && day == 25) // 1. Weihnachtstag
        && ! (month == 12 && day == 26) // 2. Weihnachtstag
        && (dayOfWeek > 0 && dayOfWeek < 6)
        && ((hours >= 9 && hours < 12) || (hours >= 15 && hours < 18))
    ) {
        var text = 'OFFEN';
        var color = 'green';
    } else {
        var text = 'GESCHLOSSEN';
        var color = 'red';
    }
    document.getElementById('notice').innerHTML = text;
    document.getElementById('notice').style.color = color;
}
window.setInterval('shownotice()',1000);
</script>


</head>
<body text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000">

<div id="notice" style="font-weight:bold"></div>
<br><br>

<input type=button name="11" value="TEST" onClick="shownotice"
</body>
</html>

20.12.2013 14:01

9 Jörg Kruse

Die JavaScript-Konsole gibt diesen Fehler aus:

Fehler: ReferenceError: now is not defined

Diese Zeile fehlt bei dir:

var now = new Date();

20.12.2013 14:07

10 KkKEvilKkK (Gast)

Vielen DAnk für alles kannst ja mal auf der fretigen Seite irgendwann mal vorbai schauen (so in 1 Woche) Leihhaus Höchst

20.12.2013 16:26

Beitrag schreiben (als Gast)

Die Antwort wird nach der Überprüfung durch einen Moderator freigeschaltet.





[BBCode-Hilfe]