Online seit... in Kombination mit einer Laufschrift

Moderator: HTML-Laie

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

Online seit... in Kombination mit einer Laufschrift

Beitrag von Hape »

Hier das Script für die Berechnung:

Code: Alles auswählen

<script language="JavaScript">
<!--
today = new Date();
bYear = 2020; // Start Jahr
bMonth = 05; // Start Monat
bDay = 23; // Start Tag
tYear = today.getFullYear();
tMonth = (today.getMonth() ) + 1 ;
tDay = today.getDate();
tHour = today.getHours();
fYear = 0;
fMonth = 0;
fDay = 0;
fHour = 0;
x = 0;
y = 0;
z = 0;
a = 0;
b = 0;
c = 0;
function testMonth() {
 if (y==4 || y==6 || y==9 || y==11) x=30
 else if (y==2) x=28
 else x=31
}
function testDay() {
 fDay = (z - bDay) + tDay;
 if (fDay > a) {
 fMonth += 1;
 fDay = fDay - a;
 }
}
y = bMonth;
testMonth();
z = x;
y = bMonth;
testMonth();
a = x;
if (bMonth <= tMonth) {
 fYear = tYear - bYear;
 fMonth = (tMonth - bMonth);
 testDay();
}
fYear = (tYear - bYear) - 1
fMonth = ((12 - bMonth) + tMonth) - 1;
testDay();
if (fMonth >= 12) {
 fYear += 1;
 fMonth -= 12;
}
with(Math) {
theYear=fYear;
tensYear=floor(theYear/10);
onesYear=theYear-(tensYear*1);
theMonth=fMonth
tensMonth=floor(theMonth/10);
onesMonth=theMonth-(tensMonth*1);
theDay=fDay
tensDay=floor(theDay/10);
onesDay=theDay-(tensDay*1);
var testArray = new makeArray("Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember");
for (z=1; z<=12; z++) {
 if (tMonth==z) {
 var b=testArray[z]
 }
}
for (z=1; z<=12; z++) {
 if (bMonth==z) {
 var c=testArray[z]
 }
}
}
var page
page = "Wir haben heute den <b>"+tDay+". "+b+" "+tYear+".</b>"
page += "Meine Homepage ist am <b>"+bDay+". "+c+" "+bYear+"</b> online gegangen. "
page += "Seit <b>"
if(parseInt(tensYear+onesYear) == 1) {
 page += tensYear + onesYear + " Jahr</b>,<b> "
}
else {
 page += tensYear + onesYear + " Jahren</b>,<b> "
}
if(parseInt(tensYear+onesYear) == 0) {
 page += ""
}

if(parseInt(tensMonth+onesMonth) == 1) {
 page += tensMonth + onesMonth + " Monat </b>und<b> "
}
else {
 page += tensMonth + onesMonth + " Monate </b>und<b> "
}
if(parseInt(tensDay+onesDay) == 1) {
 page += tensDay + onesDay + " Tag</b>."
}
else {
 page += tensDay + onesDay + " Tagen </b>sind wir nun da </b>"
}
function makeArray() {
 this.length = makeArray.arguments.length
 for (var i = 0; i < this.length; i++)
 this[i+1] = makeArray.arguments[i]
}
//-->
</script>
Hier der CSS-Abschnitt für das Laufband

Code: Alles auswählen

<style type="text/css">
<!--
.marquee {
                max-width: 100vw; /* iOS braucht das */
                white-space: nowrap;
                overflow: hidden;
                color: #ffffff;
	            font-size: 24px;
                /* hier evtl. noch font-size, color usw. */
        }

        .marquee span {
                display: inline-block;
                padding-left: 100%;
                animation: marquee 30s linear infinite;
        }

        /* Optional: mouseover (oder Tipp auf dem Touchscreen) pausiert die Laufschrift */
        .marquee span:hover {
                animation-play-state: paused
        }

        /* Make it move */
        @keyframes marquee {
                0%   { transform: translateX(0); }
                100% { transform: translateX(-100%); }
        }
=-->
</style>
Hier das Script für den Lauftext:

Code: Alles auswählen

<script>
        if (document.getElementById("marquee")) {
                var laufschrift = document.getElementById("marquee");
                len = laufschrift.innerHTML.length;
                laufschrift.firstChild.style.animationDuration = len/6 +"s";
        }
</script>
Hier noch der Code für die Anzeige:

Code: Alles auswählen

<div id="marquee" class="marquee"><span>
<script language="JavaScript">
<!-- Hide this script from old browsers --
document.write(page)
// -- End Hiding Here -->
</script></span></div>
Demoseite: Online seit... Lauftext

Antworten