我正在使用Moment.js尝试显示不同的消息,具体取决于它的日期。
例如,如果是:
等等......
到目前为止,我有这样的电话:时刻()。格式(' dddd')我知道它完全显示星期几,但我不知道知道如何根据一周中的哪一天显示不同的消息。
感谢您提前花时间研究这个问题。
奥利
答案 0 :(得分:1)
很容易确定当天,即使没有moment.js:
console.log("Happy " + ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"][new Date().getUTCDay()-1])

以下是一个更高级的示例:
var days = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"];
var day = new Date().getUTCDay() - 1;
function getMessageOfTheDay() {
switch (day) {
case 0:
return "Moody " + days[day];
break;
case 1:
return "Trippy " + days[day];
break;
case 2:
return "Weeping " + days[day];
break;
case 3:
return "Thundering " + days[day];
break;
case 4:
return "Freaky " + days[day];
break;
case 5:
return "Salty " + days[day];
break;
case 6:
return "Super " + days[day];
break;
default:
return "Happy " + days[day];
}
}
var classes = document.getElementById("messageOfTheDay").getAttribute('class').split(' ');
classes.push('day-' + days[day].toLowerCase());
document.getElementById("messageOfTheDay").setAttribute('class', classes.join(' '))
document.getElementById("messageOfTheDay").innerHTML = getMessageOfTheDay();
console.log("Below is the HTML code for or `h1`. Notice the added day-{DAY-OF-WEEK}");
console.log(document.getElementById("messageOfTheDay"));

<h1 id="messageOfTheDay" class="hello world"></h1>
&#13;
刚刚将上面的代码段更新为返回字符串的函数。知道您可以轻松选择alert
,console.log
或将其插入您的页面中,如上所述。
答案 1 :(得分:0)
我建议使用一个开关盒:
var msg = '';
switch (moment().format('dddd')) {
case 'Monday':
{
msg = 'It\'s Monday!';
break;
}
case 'Tuesday':
{
msg = 'Happy Tuesday!';
break;
}
// etc...
}
document.getElementById('message').innerHTML = msg;
&#13;
<div id='message'></div>
&#13;
答案 2 :(得分:0)
尝试类似的东西
if(moment().format('dddd') == "Monday")
//do something
if(moment().format('dddd') == "Tuesday")
//do something else
答案 3 :(得分:0)
这是一个示例。然后,您可以使用myMessage
来获取所需内容
var myMessage = '';
switch(moment().format('dddd')){
case 'Monday':
myMessage = "It's Monday !";
break;
case 'Tuesday':
myMessage = "Happy Tuesday !";
break;
case ...
}