Javascript MomentJS代码不会开始新的一周
我用的是“MomentJS” 上述代码应该是: -将“星期二上午9点”设置为开始 -将“星期三上午9点”设置为结束 -如果时间在“开始”之前,则显示“开始”的时间 -如果时间在“开始”之后和“结束”之前,则显示“开始”之后的时间 -如果时间在“结束”之后,则应将“开始”和“结束”设置为下周。(因此可以重复)Javascript MomentJS代码不会开始新的一周,javascript,jquery,momentjs,Javascript,Jquery,Momentjs,我用的是“MomentJS” 上述代码应该是: -将“星期二上午9点”设置为开始 -将“星期三上午9点”设置为结束 -如果时间在“开始”之前,则显示“开始”的时间 -如果时间在“开始”之后和“结束”之前,则显示“开始”之后的时间 -如果时间在“结束”之后,则应将“开始”和“结束”设置为下周。(因此可以重复) 现在,一切正常。但是,在事件结束后,它不会重复并变为空白。此事件是基本事件。您只设置了值eventStartNewWeek和eventEndNewWeek一次,因此当您将它们分配给其他变量时
现在,一切正常。但是,在事件结束后,它不会重复并变为空白。此事件是基本事件。您只设置了值eventStartNewWeek和eventEndNewWeek一次,因此当您将它们分配给其他变量时,不会重新计算该值
$(function() {
function whenIsReset() {
var now = moment.utc();
var eventStart = moment.utc().day(2).hour(9).minute(00).second(00).millisecond(00);
var eventStartNewWeek = moment.utc().day(-4).hour(00).minute(00).second(00).millisecond(00);
var eventEnd = moment.utc().day(3).hour(9).minute(00).second(00).millisecond(00);
var eventEndNewWeek = moment.utc().day(-4).hour(9).minute(00).second(00).millisecond(00);
if (now.isAfter(eventEnd)) {
eventStart = eventStartNewWeek;
eventEnd = eventEndNewWeek;
}
if (now.isBefore(eventStart)) {
$('#resettime').text('Resets ' + eventStart.from(now));
}
if (now.isAfter(eventStart) && now.isBefore(eventEnd)) {
$('#resettime').text('Reset ' + eventStart.from(now));
}
}
whenIsReset();
setInterval(whenIsReset, 1000);
});
例如,您可以创建函数并在每次需要创建新的eventStartNewWeek或eventEndNewWeek时调用它
eventStart = eventStartNewWeek;
eventEnd = eventEndNewWeek;
function eventStartNewWeek () {
return moment.utc().day(-4).hour(00).minute(00).second(00).millisecond(00);
};
function eventEndNewWeek () {
return moment.utc().day(-4).hour(9).minute(00).second(00).millisecond(00);
};
// Assign them
if (now.isAfter(eventEnd)) {
eventStart = eventStartNewWeek();
eventEnd = eventEndNewWeek();
}