【发布时间】:2015-02-21 23:29:33
【问题描述】:
我有问题。我的 CountdownTimer 无法在 Safari 或 IE 上运行……怎么了? 也许这是常见的事情,IE 太可怕了,想要其他日期顺序。 也许有人有解决方案... 我不知道该写什么……但我必须添加更多文字才能发布此内容。 http://jsfiddle.net/4jdudnb1/1/
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();
提前致谢,圣诞快乐
【问题讨论】:
标签: javascript internet-explorer svg safari jsfiddle