这是我的代码:
var txt = document.getElementById("HRS");
var dte = new Date();
var DayNum = dte.getDay();
const min = dte.getMinutes().toString().replace(/\d+/g, (match, offset,
string) => match < 10 ? '0' + match : match);
const hours = dte.getHours().toString().replace(/\d+/g, (match, offset,
string) => match < 10 ? '0' + match : match);
if (DayNum == 1) {
if (hours < 07) {
txt.innerHTML = "Ouvre à 7h30.";
txt.style.color = "#F4524D";
} else if (hours == 07 && min < 30) {
txt.innerHTML = "Ouvre à 7h30.";
txt.style.color = "#F4524D";
} else if (hours == 07 && min > 29) {
txt.innerHTML = "Ouvert jusqu'à 19h.";
txt.style.color = "#4CF470";
} else if (hours > 07 && hours < 19) {
txt.innerHTML = "Ouvert jusqu'à 19h.";
txt.style.color = "#4CF470";
} else if (hours > 19) {
txt.innerHTML = "Ouvre demain à 7h30.";
txt.style.color = "#F4524D";
}
} else {
txt.innerHTML = "fermé";
}
当我删除所有&&代码时。
此代码放置在html文件中。 (在script> / script>和window.onload函数之间) 这是一个Javascript代码
答案 0 :(得分:1)
主要问题在这里
if (hours < 07) {...}
在您将数字/日期输入为string
类型时将不起作用
const hours = dte.getHours().toString()...
const min = dte.getMinutes().toString()...
,然后将 hours 中的string
值与number
07进行比较,而 min < / em>。
将string
/ hours
转换回min
或引用您的数字,使其成为number
string
如前所述,如果要将其全部保留为数字,请将if (hours < "07") {...}
更改为07
。