Bild je nach Uhrzeit ausgeben lassen!
Fahrenheit
- javascript
0 Cheatah0 Fahrenheit
0 Fahrenheit
Ich hoffe ihr Coder da drausen könnt mir helfen. Ich bin gerade dabei meine Clan HP fertig zustellen und nun möchte ich gerne, dass ein Bild unseres Flugplatzes sich der Tageszeit anpasst, das heißt e nachts soll ein Bild bei Nacht erscheinen und so weiter nur habe ich noch Probleme mit der Umsetztung! Ich habe schon versucht ein Javascript zu schreiben, aber nun weis ich nicht, wie ich es dazu bringe das richtige Bild auszugeben nachdem ich bestimmt habe welches gezeigt werden muss hier is schonmal der Source
function img
var picture
var time=date.getHours();
if(time<8)
{
var picture=1.jpg;
}
if(8<time<11)
{
var picture=2.jpg;
}
if(11<time<15)
{
var picture=3.jpg;
}
if(15<time<21)
{
var picture=4.jpg;
}
if(21<time)
{
var picture=1.jpg;
}
Jetzt habe ich ja die Variable "picture"! Und jetzt weis ich nicht wie den Wert der Variabel in das <img src=""> bekomme. Ich hoffe ihr könnt mir helfen oder altenative Vorschläge machen. Allrdings muus das ganze in HTML bleiben, warum weis ich nich aber ich ich mache eigentlich die Webseite nicht, ich habe nur die Vorgabe bekommen in HTML so etwas zu schreiben
Danke im Voraus,
Fahrenheit
Hi,
var picture=1.jpg;
es ist zwar ohne Weiteres möglich, dass Zahlen in JavaScript über eine jpg-Eigenschaft verfügen - der Prototype-Ansatz macht's möglich. Allerdings dient bei Zahlen der Punkt bereits zur Abtrennung von Nachkommastellen; daher ist es nötig, die Zahl in Klammern zu setzen: (1).jpg.
if(8<time<11)
Lass Dir das Ergebnis dieses Vergleiches mal bei den Werten 7, 10 und 12 ausgeben.
Jetzt habe ich ja die Variable "picture"!
Nein, Du hast einen JavaScript-Fehler. Gültig wäre beispielsweise
var picture = 1.42;
oder das bereits oben erwähnte
var picture = (1).jpg;
Allerdings habe ich bei Dir nirgendwo eine Erweiterung des Number-Objektes gesehen, so dass (1).jpg === undefined sein sollte.
Und jetzt weis ich nicht wie den Wert der Variabel in das <img src=""> bekomme.
Was hat denn Deine Recherche ergeben?
Allrdings muus das ganze in HTML bleiben,
Keine Chance, mit HTML bekommst Du derlei nicht hin.
Cheatah
Hi,
»» var picture=1.jpg;
es ist zwar ohne Weiteres möglich, dass Zahlen in JavaScript über eine jpg-Eigenschaft verfügen - der Prototype-Ansatz macht's möglich. Allerdings dient bei Zahlen der Punkt bereits zur Abtrennung von Nachkommastellen; daher ist es nötig, die Zahl in Klammern zu setzen:
(1).jpg.»» if(8<time<11)
Lass Dir das Ergebnis dieses Vergleiches mal bei den Werten 7, 10 und 12 ausgeben.
»» Jetzt habe ich ja die Variable "picture"!
Nein, Du hast einen JavaScript-Fehler. Gültig wäre beispielsweise
var picture = 1.42;oder das bereits oben erwähnte
var picture = (1).jpg;Allerdings habe ich bei Dir nirgendwo eine Erweiterung des Number-Objektes gesehen, so dass (1).jpg === undefined sein sollte.
»» Und jetzt weis ich nicht wie den Wert der Variabel in das <img src=""> bekomme.
Was hat denn Deine Recherche ergeben?
»» Allrdings muus das ganze in HTML bleiben,
Keine Chance, mit HTML bekommst Du derlei nicht hin.
Cheatah
Ich habe es doch geschaft und die Lösung sieht so aus:
var picture
var jetzt = new Date();
var time = jetzt.getHours()*60 + jetzt.getMinutes();
if(time < 480)
{
document.write("<img src='1.jpg'/>" );
}
if(time > 480 && time < 660)
{
document.write("<img src='2.jpg'/>" );
}
if(time > 660 && time < 900)
{
document.write("<img src='3.jpg'/>" );
}
if(time > 900 && time < 1260)
{
document.write("<img src='4.jpg'/>" );
}
if(time > 1260)
{
document.write("<img src='1.jpg'/>" );
}
Hi,
var picture
var jetzt = new Date();
var time = jetzt.getHours()*60 + jetzt.getMinutes();
if(time < 480)
{
document.write("<img src='1.jpg'/>" );
}
if(time > 480 && time < 660)
{
document.write("<img src='2.jpg'/>" );
}
if(time > 660 && time < 900)
{
document.write("<img src='3.jpg'/>" );
}
if(time > 900 && time < 1260)
{
document.write("<img src='4.jpg'/>" );
}
if(time > 1260)
{
document.write("<img src='1.jpg'/>" );
}
Welches Bild wird Deiner Meinung nach um genau 8 Uhr, um genau 11 Uhr, um genau 15 Uhr bzw. um genau 21 Uhr ausgegeben?
cu,
Andreas
--
[Warum nennt sich Andreas hier MudGuard?](http://MudGuard.de/)
[O o ostern ...](http://ostereier.andreas-waechter.de/)
Fachfragen unaufgefordert per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
Welches Bild wird Deiner Meinung nach um genau 8 Uhr, um genau 11 Uhr, um genau 15 Uhr bzw. um genau 21 Uhr ausgegeben?
Okay, da muss ich dir rechtgeben, da muss ich einfach nochmal die Bedingungen ändern, allerdings geht es hier ja um 1 Minute also wäre das wohl nicht so schlimm!
Okay, da muss ich dir rechtgeben, da muss ich einfach nochmal die Bedingungen ändern, allerdings geht es hier ja um 1 Minute also wäre das wohl nicht so schlimm!
Hier noch,al das korrigierte Script
var picture
var jetzt = new Date();
var time = jetzt.getHours()*60 + jetzt.getMinutes();
if(time < 480)
{
document.write("<img src='1.jpg'/>" );
}
if(time >= 480 && time < 660)
{
document.write("<img src='2.jpg'/>" );
}
if(time >= 660 && time < 900)
{
document.write("<img src='3.jpg'/>" );
}
if(time >= 900 && time < 1260)
{
document.write("<img src='4.jpg'/>" );
}
if(time >= 1260)
{
document.write("<img src='1.jpg'/>" );
}
@@Fahrenheit:
Hier noch,al das korrigierte Script
Gut ist es immer noch nicht.
Wenn du weißt, dass von mehreren Bedingungen nur eine zutreffen kann, dann ist
if (Bedingung1) Anweisung1;
if (Bedingung2) Anweisung2;
if (Bedingung3) Anweisung3;
if (Bedingung4) Anweisung4;
uneffizient. Wenn Bedingung1 zutrifft, dann ist schon klar, dass Bedingung2 und Bedingung3 nicht zutreffen. Folglich kann man sich sparen, sie zu überprüfen:
if (Bedingung1) Anweisung1;
else if (Bedingung2) Anweisung2;
else if (Bedingung3) Anweisung3;
else if (Bedingung4) Anweisung4;
Und wenn klar ist, dass von allen n Bedingungen genau eine zutrifft, muss bei Nichtzutreffen der ersten n-1 Bedingungen die letzte nicht mehr geprüft werden, da klar ist, dass sie zutrifft.
if (Bedingung1) Anweisung1;
else if (Bedingung2) Anweisung2;
else if (Bedingung3) Anweisung3;
else Anweisung4;
Live long and prosper,
Gunnar
Mahlzeit Fahrenheit,
1. bitte zitiere vernünftig: das, worauf Du Dich beziehst - nicht jedoch das komplette Posting.
Ich habe es doch geschaft und die Lösung sieht so aus:
2. Du hast zwar etwas geschafft, eine Lösung ist das allerdings nicht (u.a. z.B. wegen MudGuards Einwand).
<img id="flugplatz" src="normal.jpg">
[...]
<script type="text/javascript">[code lang=javascript]
var img = document.getElementById('flugplatz');
var std = (new Date()).getHours();
if (std < 8) {
img.src = '1.jpg';
} else if (std < 11) {
img.src = '2.jpg';
} else if (std < 15) {
img.src = '3.jpg';
} else if (std < 21) {
img.src = '4.jpg';
} else {
img.src = '1.jpg';
}
~~~</script>[/code]
(ungeprüfter Vorschlag)
MfG,
EKKi
--
sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
Ich danke allen, die schon nachgedacht haben, aber ich habe Das Problem selbts gelöst! Die Lösung werde ich in kürze präsentieren falls wieder mal jemand solche Probleme hat!