javascript:将秒数转换为月份

时间:2013-05-13 20:21:57

标签: javascript countdown

我使用以下脚本进行倒计时。

function startCountdown() {
    var countdownDate = new Date("9/13/2013 12:00 AM");
    var currentDate = new Date();
    var dateDifference = new Date(countdownDate - currentDate);
    var seconds = dateDifference.valueOf() / 1000;
    CountBack(seconds);
}

function CountBack(seconds) {
    var DisplayFormat = "DAYS days and HOURS hours";
    DisplayFormat = DisplayFormat.replace("DAYS", (Math.floor(seconds/86400)) % 100000);
    DisplayFormat = DisplayFormat.replace("HOURS", (Math.floor(seconds/3600)) % 24);
    $('span.countdown').html(DisplayFormat);
}

startCountdown();

我怎样才能显示剩下的月份? (我想要:3个月,29天和3个小时)

谢谢。

1 个答案:

答案 0 :(得分:2)

使用这个简单的好功能。查看 LIVE DEMO

var cc = new Date("9/13/2012 12:00 AM"),
    c = new Date();

function timeDifference(d, dd) {
    var hour = 60 * 60 * 1000,
        day = hour * 24,
        month = day * 30,
        ms = Math.abs(d - dd),
        months = parseInt(ms / month, 10);    

    ms = ms - months * month;    
    var days = parseInt(ms / day, 10); 
    ms -= days * day;
    var hours = parseInt(ms / hour, 10);   
    ms -= hours * hour;

    return [
        months + " months",
        days + " days",
        hours + " hours"
    ].join(", ");
};

document.body.innerHTML += timeDifference(cc, c) + "<br />";