如何在本月的每个星期五倒计时?

时间:2012-08-22 13:56:29

标签: javascript countdown repeat week-number

我的网站倒计时,我想让它倒计时到下周五,当周五结束时,我希望它能自动倒计时到下周五......再重复一次......

我有这个脚本,但似乎不能让它工作,有人可以帮助我吗?

提前致谢

$(function(){

var note = $('#note'),
    ts = new Date(5), //Setting the date here
    newYear = true;

if((new Date()) > ts){
    ts = (new Date()).getTime() + 10*24*60*60*1000;
    newYear = false;
}

$('#countdown').countdown({
    timestamp   : ts,
    callback    : function(days, hours, minutes, seconds){

        var message = "";

        message += days + " day" + ( days==1 ? '':'s' ) + ", ";
        message += hours + " hour" + ( hours==1 ? '':'s' ) + ", ";
        message += minutes + " minute" + ( minutes==1 ? '':'s' ) + " and ";
        message += seconds + " second" + ( seconds==1 ? '':'s' ) + " <br />";

        if(newYear){
            message += "left until the new year!";
        }
        else {
            message += "left to 10 days from now!";
        }

        note.html(message);
    }
});

});

1 个答案:

答案 0 :(得分:1)

使用Date对象上存在的getDay()方法,该方法将返回当天的数字0 =星期日,1 =星期一,5 =星期五。
确定今天是哪一天以及直到第二天编号的天数。
然后ts =(new Date())。getTime()+ 60 * 60 * 24 * daysUntilFriday * 1000;
在此之后,您还希望将方法setHours(),setMinutes()和Seconds设置为0,以便获得到星期五开始的确切时间。

EDIT! 对不起,当您完成ts变量时,您想使用setTime(ts),以便获得具有下周五日期的新Date对象。然后你开始将小时,分钟和秒设置为零,然后再次设置getTime(),这样你的ts就是你的倒计时方法的正确格式。

祝你好运!

此致 托拜厄斯