Geburtstagserinnerer

Moderator: HTML-Laie

Antworten
Benutzeravatar
Hape
Administrator
Beiträge: 336
Registriert: Fr 22. Mai 2020, 00:33

Geburtstagserinnerer

Beitrag von Hape »

Hier ein Script für vergessliche Zeitgenossen.
zu ändern sind diese Zeilen:
var bb=["1.1","neujahr","1.4","Aprilscherz","12.5","keine Ahnung","24.12","Christkind"];
var geb=14;
in den Header:

Code: Alles auswählen

<script type="text/javascript">
function birthday() {
var bb=["1.1","neujahr","1.4","Aprilscherz","12.5","keine Ahnung","24.12","Christkind"];
var geb=14;
var kalender=document.getElementById("kalender");
if (kalender) {
if (kalender.firstChild) kalender.removeChild(kalender.firstChild);
var ul=document.createElement("ul");
kalender.appendChild(ul);
with (new Date()) {
var monat=getMonth();
var jahr=getFullYear();
var tag=getDate();
}
var d0=Date.UTC(jahr,monat,tag,9,0,0);
var eintag=86400000;
var b=monat+"."+tag;
var j,bi,t,m,d,d1;
for(j=0; j<bb.length-1; j+=2)
{
bi=bb[j].split(".");
t=bi[0];
m=bi[1]-1;
d=(Date.UTC(jahr,m,t,9,0,0)-d0)/eintag;
d1=(Date.UTC(jahr+1,m,t,9,0,0)-d0)/eintag;
if (Math.abs(d)>Math.abs(d1)) d=d1;
d1=(Date.UTC(jahr-1,m,t,9,0,0)-d0)/eintag;
if (Math.abs(d)>Math.abs(d1)) d=d1;
t=Math.abs(d);
if (t<=geb)
{
bi=bb[j+1]+" hat";
if (d<-2) bi+='te vor ' + t + ' Tagen Geburtstag';
if (d>2) bi+=' in ' + t + ' Tagen Geburtstag';
if (d==-2) bi+='te vorgestern Geburtstag';
if (d==2) bi+=' %FCbermorgen Geburtstag';
if (d==-1) bi+='te gestern Geburtstag';
if (d==1) bi+=' morgen Geburtstag';
if (d==0) bi+=' heute Geburtstag';
var li=document.createElement("li");
li.appendChild(document.createTextNode(bi));
ul.appendChild(li);
}
}

}}
//zu ändern sind diese Zeilen:
var bb=["1.1","neujahr","1.4","Aprilscherz","12.5","keine Ahnung","24.12","Christkind"];
var geb=14;

in bb stecken die Geburtstage, geb=14 heißt "alle Geburtstage innerhalb der letzten und kommenden 14 Tage anzeigen" - Zeitraum lässt sich beliebig anpassen, einfach die zahl ändern. 
</script>
In den Body-Tag einfügen:

Code: Alles auswählen

onload=birthday()
In den Body

Code: Alles auswählen

<div id="kalender">keiner hat Geburtstag</div>
Hier eine Demoseite: https://hapes-javascript-demo-page.hpag ... nerer.html

Antworten