Supportnet / Forum / Skripte(PHP,ASP,Perl...)
Javascript gesucht
Frage
Hallo! Wer kann mir helfen?
Mit einem Javascript möchte ich einen Text_1 12 Monate lang vor einem Datum und 12 Monate lang danach einen anderen Text_2 anzeigen und das soll sich jedes Jahr wiederholen. Der Monat an dem der Text wechseln soll ist immer der Juli.
Ich bitte um ein vollständiges Script, da ich nur über minimale Javascript-Erfahrungen verfüge.
Danke!
Antwort 1 von DaPascha
Hi,
wo kommen den die Texte het? Aus einer Datenbank oder sind sie statisch?
Meinst du es ist wirklich sinnvoll dies über ein Skript zu machen, wenn sie doch so lange angezeigt werden. Ich schätze nicht. Das einfachste wäre, wenn du sie nach einem Jahr per Hand austauchen wirst.
Wenn die Texte aus einer Datenbank kommen wäre PHP wohl sinnvoller...
MfG DaPascha
wo kommen den die Texte het? Aus einer Datenbank oder sind sie statisch?
Meinst du es ist wirklich sinnvoll dies über ein Skript zu machen, wenn sie doch so lange angezeigt werden. Ich schätze nicht. Das einfachste wäre, wenn du sie nach einem Jahr per Hand austauchen wirst.
Wenn die Texte aus einer Datenbank kommen wäre PHP wohl sinnvoller...
MfG DaPascha
Antwort 2 von katy
Hallo Juergen,
probier es mal so:
falls du Nachfragen hast, melde dich
katy
probier es mal so:
<html><head><title>Test</title>
<script type="text/javascript">
function textanzeige() {
var datum = new Date();
var monat = datum.getMonth();
var text1 = "<p>Dieser Text steht im 1. Halbjahr!</p><p>Wechsel erfolgt im Juli.</p>";
var text2 = "<p>Dieser Text steht im 2. Halbjahr!</p><p>Wechsel erfolgt erst wieder im Januar.</p>";
var wohin = document.getElementById("jahrestext");
if (wohin) wohin.innerHTML = (monat<6)? text1 : text2;
}
window.onload = textanzeige;
</script>
</head>
<body>
<h1>Beispielseite</h1>
<div id="jahrestext">Hier folgt der Jahrestext, wenn JavaScript aktiviert ist.</div>
</body>
</html>
falls du Nachfragen hast, melde dich
katy
Antwort 3 von TByte
Soll ich dir ein serverseitiges Perl-Script schreiben? Egal was, aber serverseitig eignet sich glaub ich besser, weil nicht alle haben Javascript immer aktiv.
mfg
TByte
mfg
TByte
Antwort 4 von Juergen52
@katy
Super, danke! Wenn es so funktioniert wie ich mir es vorstelle, wäre es die Lösung. Der Text soll nicht im Januar wechsel , sondern mit dem 1. Juli. Weil du schreibst "
Wechsel erfolgt erst wieder im Januar." Oder sehe ich das falsch.
@TByte
danke, für dein Angebot. PHP kann ich leider auf meinen Account nicht nutzen und Perl dann warscheinlich auch nicht.
Super, danke! Wenn es so funktioniert wie ich mir es vorstelle, wäre es die Lösung. Der Text soll nicht im Januar wechsel , sondern mit dem 1. Juli. Weil du schreibst "
Wechsel erfolgt erst wieder im Januar." Oder sehe ich das falsch.
@TByte
danke, für dein Angebot. PHP kann ich leider auf meinen Account nicht nutzen und Perl dann warscheinlich auch nicht.
Antwort 5 von katy
Hallo Juergen52,
sorry, da hatte ich dich nicht ganz verstanden. So ist es natürlich etwas komplizierter, aber so sollte das funktionieren
katy
sorry, da hatte ich dich nicht ganz verstanden. So ist es natürlich etwas komplizierter, aber so sollte das funktionieren
<html><head><title>Test</title>
<script type="text/javascript">
function textanzeige() {
var datum = new Date();
var ungerade = datum.getYear()%2;
var monat = datum.getMonth();
var text = "";
var wohin = document.getElementById("jahrestext");
if (wohin) {
if ((ungerade>0 && monat<6) || (ungerade==0 && monat>5)) text = "<p>Dieser Text steht in ungeraden Jahren im 1. Halbjahr und in geraden im 2ten!</p><p>Wechsel erfolgt im Juli.</p>";
else text = "<p>Dieser Text steht geraden Jahren im 1. Halbjahr und in ungeraden im 2ten!</p><p>Wechsel erfolgt im Juli.</p>";
wohin.innerHTML = text;
}
}
window.onload = textanzeige;
</script>
</head>
<body>
<h1>Beispielseite</h1>
<div id="jahrestext">Hier folgt der Jahrestext, wenn JavaScript aktiviert ist.</div>
</body>
</html>
katy
Antwort 6 von Juergen52
@katy
ich glaube dein Script funktioniert, was sich im laufenden Betreieb sicher noch bestätigen wird.
Hier nun meine Anpassung für den Homepageeinsatz.
Ich möchte nun noch, dass sich das angezeiget Jahr "+Jahr+" automatisch aktualisiert. Das heisst, ist das aktuelle Jahr ungerade soll +1 dazugezählt werden und ist das aktuelle Jahr gerade, soll +2 dazu gezählt und angezeigt werden.
Das wäre mein letzter Wunsch.
MfG, Jürgen
ich glaube dein Script funktioniert, was sich im laufenden Betreieb sicher noch bestätigen wird.
Hier nun meine Anpassung für den Homepageeinsatz.
<html><head><title>Test</title>
<script type="text/javascript">
function textanzeige() {
var datum = new Date();
var ungerade = datum.getYear()%2;
var monat = datum.getMonth();
var text = "";
var wohin = document.getElementById("jahrestext");
if (wohin) {
if ((ungerade>0 && monat<6) || (ungerade==0 && monat>5)) text = "<h3>Das nächste Rosenfest findet im Jahr <span style='color:#FF00FF;'>" + Jahr + "</span> statt.</h3>";
else text = "<span style='color:#FF00FF;'><h3>Auf zum diesjährigen Rosenfest!</h3></span>";
wohin.innerHTML = text;
}
}
window.onload = textanzeige;
</script>
<noscript>
<font color="#FF0000"><b>!Bitte aktivieren Sie JavaScript, um die Seite vollständig darzustellen!</b></font><br>
</noscript>
</head>
<body>
<div id="jahrestext" align="center"> </div>
</body>
</html>
Ich möchte nun noch, dass sich das angezeiget Jahr "+Jahr+" automatisch aktualisiert. Das heisst, ist das aktuelle Jahr ungerade soll +1 dazugezählt werden und ist das aktuelle Jahr gerade, soll +2 dazu gezählt und angezeigt werden.
Das wäre mein letzter Wunsch.
MfG, Jürgen
Antwort 7 von katy
Hallo Juergen,
dein noscript-Bereich ist erst mal ganz löblich aber
1. überflüssig (siehe den neuen Code) und
2. völlig verkehrt, nämlich im head-Bereich, eingebaut
Beachte auch die 2te Zeile (meta ...), die sowas wie ä unnötig macht (zumal das im Zusammenhang mit JavaScript nicht funktioniert).
Und im 2ten text darf <span> nicht (niemals!) <h3> enthalten, wie du siehst geht es sowieso auch ohne.
katy
dein noscript-Bereich ist erst mal ganz löblich aber
1. überflüssig (siehe den neuen Code) und
2. völlig verkehrt, nämlich im head-Bereich, eingebaut
<html><head>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<title>Test</title>
<script type="text/javascript">
function textanzeige() {
var datum = new Date();
var jahr = datum.getFullYear();
var ungerade = jahr%2;
var monat = datum.getMonth();
var text = "";
var wohin = document.getElementById("jahrestext");
if (wohin) {
jahr += (ungerade>0)? 1 : 2;
if ((ungerade>0 && monat<6) || (ungerade==0 && monat>5)) text = "<h3>Das nächste Rosenfest findet im Jahr <span style='color:#FF00FF;'>" + jahr + "</span> statt.</h3>";
else text = "<h3 style='color:#FF00FF;'>Auf zum diesjährigen Rosenfest!</h3>";
wohin.innerHTML = text;
}
}
window.onload = textanzeige;
</script>
</head>
<body>
<div id="jahrestext" align="center"><b>!Bitte aktivieren Sie JavaScript, um die Seite vollständig darzustellen!</b></div>
</body>
</html>
Beachte auch die 2te Zeile (meta ...), die sowas wie ä unnötig macht (zumal das im Zusammenhang mit JavaScript nicht funktioniert).
Und im 2ten text darf <span> nicht (niemals!) <h3> enthalten, wie du siehst geht es sowieso auch ohne.
katy
Antwort 8 von Juergen52
@katy
Danke für Deine Unterstützung.
Da hab ich wieder was dazu gelernt. Nun werde ich das Script in meine HP einbauen und testen.
Danke für Deine Unterstützung.
Da hab ich wieder was dazu gelernt. Nun werde ich das Script in meine HP einbauen und testen.