簡単なカウントダウンスクリプトがあります。コードはクロームで動作しますが、Firefoxでは動作しません。FirefoxではNaNが表示されますが、chromeはカウントダウンにこれが発生する理由を示しています。
function CountDownTimer(time, name) {
var counter = setInterval(function(){
var today = new Date();
var expire = new Date(time);
var timeRemains = expire - today;
var days = Math.floor(timeRemains / (1000 * 60 * 60 * 24));
var hours = Math.floor(timeRemains / (1000 * 60 * 60));
var mins = Math.floor(timeRemains / (1000 * 60));
var secs = Math.floor(timeRemains / 1000);
var dd = days;
var hh = hours - days * 24;
var mm = mins - hours * 60;
var ss = secs - mins * 60;
if (expire < today) {
clearInterval(counter);
document.getElementById(name).innerHTML = '<span class="expire">expire!</span>';
return;
} else {
if (dd < 10) {
dd = "0" + dd;
}
if (hh < 10) {
hh = "0" + hh;
}
if (mm < 10) {
mm = "0" + mm;
}
if (ss < 10) {
ss = "0" + ss;
}
document.getElementById(name).innerHTML = dd + ' : ' + hh + ' : ' + mm + ' : ' + ss;
}
}, 1000 );
}
CountDownTimer("2012-07-06 19:00:00", "Time1");