var jahr = 2015,
monat = 2,
tag = 15,
stunde = 0,
minute = 0,
sekunde = 0;
var zielDatum = new Date(jahr, monat - 1, tag, stunde, minute, sekunde);
function countdown() {
startDatum = new Date();
if (startDatum < zielDatum) {
var jahre = 0,
monate = 0,
tage = 0,
stunden = 0,
minuten = 0,
sekunden = 0;
while (startDatum < zielDatum) {
jahre++;
startDatum.setFullYear(startDatum.getFullYear() + 1);
}
startDatum.setFullYear(startDatum.getFullYear() - 1);
jahre--;
while (startDatum < zielDatum) {
monate++;
startDatum.setMonth(startDatum.getMonth() + 1);
}
startDatum.setMonth(startDatum.getMonth() - 1);
monate--;
while (startDatum.getTime() + (24 * 60 * 60 * 1000) < zielDatum) {
tage++;
startDatum.setTime(startDatum.getTime() + (24 * 60 * 60 * 1000));
}
stunden = Math.floor((zielDatum - startDatum) / (60 * 60 * 1000));
startDatum.setTime(startDatum.getTime() + stunden * 60 * 60 * 1000);
minuten = Math.floor((zielDatum - startDatum) / (60 * 1000));
startDatum.setTime(startDatum.getTime() + minuten * 60 * 1000);
tage += monate * 30;
sekunden = Math.floor((zielDatum - startDatum) / 1000);
if (tage < 10) {
tage = "00" + tage;
} else if (tage < 100) {
tage = "0" + tage;
}
document.getElementById("svgdays").innerHTML = tage;
if (monat < 10) {
monat = "0" + monat;
}
if (stunden < 10) {
stunden = "0" + stunden;
}
if (minuten < 10) {
minuten = "0" + minuten;
}
if (sekunden < 10) {
sekunden = "0" + sekunden;
}
document.getElementById("svghours").innerHTML = stunden;
document.getElementById("svgminutes").innerHTML = minuten;
document.getElementById("svgseconds").innerHTML = sekunden;
setTimeout('countdown()', 200);
} else {}
}
countdown();
提前致谢并欢迎XMas
答案 0 :(得分:1)
在setTimeout
中删除倒计时中的引文和括号
:此强>
setTimeout('countdown()', 200);
应该
setTimeout(countdown, 200);
此外,您无法访问innerHTML
个SVG元素,因此您必须使用textContent
:
:此强>
document.getElementById("svghours").innerHTML = stunden;
Shoud Be
document.getElementById("svghours").textContent = stunden;
在IE中检查这个小提琴,它有效 http://jsfiddle.net/4jdudnb1/5/