首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >开放时间通知(07:30 tot 22:00)

开放时间通知(07:30 tot 22:00)
EN

Stack Overflow用户
提问于 2017-07-13 07:48:46
回答 1查看 82关注 0票数 0

我试图显示,如果一个商店是开放的或没有,在他们的网站。这家商店每周7天营业,从07:30到22:00。现在,在这个回答(JSFiddle)的帮助下,我可以每天从07:00到22:00显示它。但我不能让它从07:30开始,最好的方法是什么?

Javascript:

代码语言:javascript
复制
var checkOpenStatus = function () {
    var d = new Date();
    var date = d.getHours();
    if ((date > 9) && (date < 20)) {
        y = "<span style=\"color:#07ed11\">We're Open!</span>";
    } else {
        y = "<span style=\"color:#fc4b1c\">Sorry we're Closed.</span>";
    }
    document.getElementById("open-close").innerHTML = y;
};

checkOpenStatus();

代码语言:javascript
复制
<div id="open-close"></div>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-13 07:52:58

如果时间是9,那么还需要检查分钟是否大于30

代码语言:javascript
复制
var d = new Date();
var h = d.getHours();
var m = d.getMinutes();
if ((h > 9 || (h == 9 && m >= 30)) && (h < 20)) {

下面是函数的自定义版本,它注入日期来证明逻辑。运行脚本并检查控制台。

代码语言:javascript
复制
var checkOpenStatus = function (d) {
    //var d = new Date();
    var h = d.getHours();
    var m = d.getMinutes();
    if ((h > 9 || (h == 9 && m >= 30)) && (h < 20)) {
        y = "<span style=\"color:#07ed11\">We're Open!</span>";
    } else {
        y = "<span style=\"color:#fc4b1c\">Sorry we're Closed.</span>";
    }
    console.log(d, y);
};

checkOpenStatus(new Date(2017, 1, 1, 9, 0));
checkOpenStatus(new Date(2017, 1, 1, 9, 10));
checkOpenStatus(new Date(2017, 1, 1, 9, 20));
checkOpenStatus(new Date(2017, 1, 1, 9, 30));
checkOpenStatus(new Date(2017, 1, 1, 9, 40));
checkOpenStatus(new Date(2017, 1, 1, 10, 40));
checkOpenStatus(new Date(2017, 1, 1, 20, 00));
checkOpenStatus(new Date(2017, 1, 1, 23, 00));

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45074511

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档