Vorlage:Countdown: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Loki (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
K (Vorlagen-Kategorie umbenannt) |
||
(6 dazwischenliegende Versionen von einem anderen Benutzer werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
<center><div class="countdown" style="border-collapse: separate; font-size:200%; text-align:center; background-color:LightGreen; color:white; width:45%"><br/></div></center><noinclude> | <center><div class="countdown" style="border-collapse: separate; font-size:200%; text-align:center; background-color:{{{FARBE|LightGreen}}}; color:white; width:45%"> | ||
Countdown to the Sixth World<br/>{{#expr:floor((1324684800 - {{#time: U | now }})/86400)}} Tage {{#expr:((1324684800 - {{#time: U | now }})/3600) mod 24}} Stunden {{#expr:((1324684800 - {{#time: U | now }})/60) mod 60}} Minuten | |||
</div></center><noinclude> | |||
[[Kategorie:! | Funktionsfähigkeit erreicht die '''Vorlage:Countdown''' erst durch Einfügen des folgenden Javascripts auf der monobook.js-Seite (Link: <nowiki>http://wiki.shadowhelix.de/Benutzer:Name_des_Benutzers/monobook.js</nowiki>), außerdem benötigt die Vorlage hasClass: | ||
==Variante 1 - Millisekunden== | |||
<pre> | |||
/* Countdown */ | |||
function updateCountdown () { | |||
var Countdown = document.getElementsByTagName( "div" ); | |||
for ( var i = 0; i < Countdown.length; i++ ) { | |||
// div mit class="countdown" raussuchen | |||
if ( hasClass( Countdown[i], "countdown" ) ) { | |||
// div wird geleert | |||
while(Countdown[i].hasChildNodes()){ | |||
Countdown[i].removeChild(Countdown[i].lastChild); | |||
} | |||
var targetTime = new Date("December 24, 2011 00:00:00"); | |||
var currentTime = new Date (); | |||
var differenceTime = new Date(targetTime - currentTime); | |||
var days = (Math.floor(differenceTime/(86400*1000))).toString(); | |||
var hours = (Math.floor(differenceTime/(3600*1000)) % 24).toString(); | |||
if (hours < 10) {hours = "0"+hours} | |||
var minutes = (Math.floor(differenceTime/(60*1000)) % 60).toString(); | |||
if (minutes < 10) {minutes = "0"+minutes} | |||
var seconds = (Math.floor(differenceTime/1000) % 60).toString(); | |||
if (seconds < 10) {seconds = "0"+seconds} | |||
var milliseconds = (Math.floor(differenceTime) % 1000).toString(); | |||
if (milliseconds < 10) {milliseconds = "00"+milliseconds} else if (milliseconds < 100) {milliseconds = "0"+milliseconds} | |||
var CountdownText1 = document.createTextNode( "Countdown to the Sixth World"); | |||
var CountdownText2 = document.createTextNode( days+" Tage "+hours+":"+minutes+":"+seconds+":"+milliseconds ); | |||
var Brk = document.createElement( "br" ); | |||
// einfügen in div | |||
Countdown[i].insertBefore( CountdownText2, Countdown[i].childNodes[0] ); | |||
Countdown[i].insertBefore( Brk, Countdown[i].childNodes[0] ); | |||
Countdown[i].insertBefore( CountdownText1, Countdown[i].childNodes[0] ); | |||
// reset der lineHeight notwendig | |||
Countdown[i].style.lineHeight = "1.5em"; | |||
// nächster aufruf von updateCountdown() nach 1000ms | |||
setTimeout('updateCountdown();',1); | |||
} | |||
} | |||
} | |||
addOnloadHook( updateCountdown ); | |||
</pre> | |||
==Variante 1 - Centisekunden== | |||
<pre> | |||
/* Countdown */ | |||
function pause(delay) { | |||
var start = new Date(); | |||
while ((new Date()) - start <= delay) {} | |||
} | |||
function updateCountdown () { | |||
var Countdown = document.getElementsByTagName( "div" ); | |||
for ( var i = 0; i < Countdown.length; i++ ) { | |||
// div mit class="countdown" raussuchen | |||
if ( hasClass( Countdown[i], "countdown" ) ) { | |||
// div wird geleert | |||
while(Countdown[i].hasChildNodes()){ | |||
Countdown[i].removeChild(Countdown[i].lastChild); | |||
} | |||
var targetTime = new Date("December 24, 2011 00:00:00"); | |||
var currentTime = new Date (); | |||
var differenceTime = new Date(targetTime - currentTime); | |||
var Brk = document.createElement( "br" ); | |||
if (differenceTime > 0) { | |||
var days = (Math.floor(differenceTime/(86400*1000))).toString(); | |||
var hours = (Math.floor(differenceTime/(3600*1000)) % 24).toString(); | |||
if (hours < 10) {hours = "0"+hours} | |||
var minutes = (Math.floor(differenceTime/(60*1000)) % 60).toString(); | |||
if (minutes < 10) {minutes = "0"+minutes} | |||
var seconds = (Math.floor(differenceTime/1000) % 60).toString(); | |||
if (seconds < 10) {seconds = "0"+seconds} | |||
var centiseconds = (Math.floor(differenceTime/10) % 100).toString(); | |||
if (centiseconds < 10) {centiseconds = "0"+centiseconds} | |||
var CountdownText1 = document.createTextNode( "Countdown to the Sixth World"); | |||
var CountdownText2 = document.createTextNode( days+" Tage "+hours+":"+minutes+":"+seconds+":"+centiseconds ); | |||
// einfügen in div | |||
Countdown[i].insertBefore( CountdownText2, Countdown[i].childNodes[0] ); | |||
Countdown[i].insertBefore( Brk, Countdown[i].childNodes[0] ); | |||
Countdown[i].insertBefore( CountdownText1, Countdown[i].childNodes[0] ); | |||
// reset der lineHeight notwendig | |||
Countdown[i].style.lineHeight = "1.5em"; | |||
// nächster aufruf von updateCountdown() nach 100ms | |||
setTimeout('updateCountdown();',10); | |||
} else { | |||
} | |||
} | |||
} | |||
} | |||
addOnloadHook( updateCountdown ); | |||
</pre> | |||
[[Kategorie:!Vorlagen/Gimmick|Countdown]]</noinclude> |
Aktuelle Version vom 2. Mai 2013, 15:45 Uhr
Countdown to the Sixth World
-4720 Tage -10 Stunden -1 Minuten
Funktionsfähigkeit erreicht die Vorlage:Countdown erst durch Einfügen des folgenden Javascripts auf der monobook.js-Seite (Link: http://wiki.shadowhelix.de/Benutzer:Name_des_Benutzers/monobook.js), außerdem benötigt die Vorlage hasClass:
Variante 1 - Millisekunden
/* Countdown */ function updateCountdown () { var Countdown = document.getElementsByTagName( "div" ); for ( var i = 0; i < Countdown.length; i++ ) { // div mit class="countdown" raussuchen if ( hasClass( Countdown[i], "countdown" ) ) { // div wird geleert while(Countdown[i].hasChildNodes()){ Countdown[i].removeChild(Countdown[i].lastChild); } var targetTime = new Date("December 24, 2011 00:00:00"); var currentTime = new Date (); var differenceTime = new Date(targetTime - currentTime); var days = (Math.floor(differenceTime/(86400*1000))).toString(); var hours = (Math.floor(differenceTime/(3600*1000)) % 24).toString(); if (hours < 10) {hours = "0"+hours} var minutes = (Math.floor(differenceTime/(60*1000)) % 60).toString(); if (minutes < 10) {minutes = "0"+minutes} var seconds = (Math.floor(differenceTime/1000) % 60).toString(); if (seconds < 10) {seconds = "0"+seconds} var milliseconds = (Math.floor(differenceTime) % 1000).toString(); if (milliseconds < 10) {milliseconds = "00"+milliseconds} else if (milliseconds < 100) {milliseconds = "0"+milliseconds} var CountdownText1 = document.createTextNode( "Countdown to the Sixth World"); var CountdownText2 = document.createTextNode( days+" Tage "+hours+":"+minutes+":"+seconds+":"+milliseconds ); var Brk = document.createElement( "br" ); // einfügen in div Countdown[i].insertBefore( CountdownText2, Countdown[i].childNodes[0] ); Countdown[i].insertBefore( Brk, Countdown[i].childNodes[0] ); Countdown[i].insertBefore( CountdownText1, Countdown[i].childNodes[0] ); // reset der lineHeight notwendig Countdown[i].style.lineHeight = "1.5em"; // nächster aufruf von updateCountdown() nach 1000ms setTimeout('updateCountdown();',1); } } } addOnloadHook( updateCountdown );
Variante 1 - Centisekunden
/* Countdown */ function pause(delay) { var start = new Date(); while ((new Date()) - start <= delay) {} } function updateCountdown () { var Countdown = document.getElementsByTagName( "div" ); for ( var i = 0; i < Countdown.length; i++ ) { // div mit class="countdown" raussuchen if ( hasClass( Countdown[i], "countdown" ) ) { // div wird geleert while(Countdown[i].hasChildNodes()){ Countdown[i].removeChild(Countdown[i].lastChild); } var targetTime = new Date("December 24, 2011 00:00:00"); var currentTime = new Date (); var differenceTime = new Date(targetTime - currentTime); var Brk = document.createElement( "br" ); if (differenceTime > 0) { var days = (Math.floor(differenceTime/(86400*1000))).toString(); var hours = (Math.floor(differenceTime/(3600*1000)) % 24).toString(); if (hours < 10) {hours = "0"+hours} var minutes = (Math.floor(differenceTime/(60*1000)) % 60).toString(); if (minutes < 10) {minutes = "0"+minutes} var seconds = (Math.floor(differenceTime/1000) % 60).toString(); if (seconds < 10) {seconds = "0"+seconds} var centiseconds = (Math.floor(differenceTime/10) % 100).toString(); if (centiseconds < 10) {centiseconds = "0"+centiseconds} var CountdownText1 = document.createTextNode( "Countdown to the Sixth World"); var CountdownText2 = document.createTextNode( days+" Tage "+hours+":"+minutes+":"+seconds+":"+centiseconds ); // einfügen in div Countdown[i].insertBefore( CountdownText2, Countdown[i].childNodes[0] ); Countdown[i].insertBefore( Brk, Countdown[i].childNodes[0] ); Countdown[i].insertBefore( CountdownText1, Countdown[i].childNodes[0] ); // reset der lineHeight notwendig Countdown[i].style.lineHeight = "1.5em"; // nächster aufruf von updateCountdown() nach 100ms setTimeout('updateCountdown();',10); } else { } } } } addOnloadHook( updateCountdown );