首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >办公时间脚本javascript

办公时间脚本javascript
EN

Stack Overflow用户
提问于 2013-09-25 23:12:25
回答 2查看 3K关注 0票数 2

我需要脚本,将在我的网站上显示“打开”和“关闭”功能。

脚本应显示“打开”从星期一到星期五从上午08:00到晚上19:30每一天

周六上午08:00至下午15:00应显示“开放”(否则关闭显示)

星期天全天休息。

我试图管理这个脚本,但我无法实现它:

代码语言:javascript
复制
var Digital=new Date()
var hours=Digital.getHours()

if (hours>=08:00&&hours<=19:30) 
document.write('Open')
else if (hours>=19:31&&hours<=07:59) 
document.write('Close')

但是我需要一些额外的时间,这只是时间。

EN

回答 2

Stack Overflow用户

发布于 2013-09-25 23:15:59

hours变量将是一个整数,您需要将其与一个数字进行比较,如下所示:

代码语言:javascript
复制
if (hours >= 8 && hours <= 19) 
    document.write('Open')
else if (hours >= 19 && hours <= 7) 
    document.write('Close')

在重写这些方法时,还需要从Digital变量中获取并比较分钟数。

票数 2
EN

Stack Overflow用户

发布于 2013-09-26 01:01:21

在检查时间之前,您需要使用if语句检查当前日期。您的格式化稍有偏差,因为digital.getHours()返回一个整数,而不是那些格式化的字符串。

我还添加了一个setInterval来每分钟更新一次状态,以防页面长时间打开。

这里是小提琴:http://jsfiddle.net/u6bwJ/1/

编辑:修复了一些错误(即打字错误)。我还看到你需要本地化这一点。我对代码的顶部做了一些修改,以便根据时区进行调整,因此它总是根据本地时间显示信息。但有一个警告,那就是它目前是硬编码的,包括夏令时。这意味着一旦DST切换,它将是不准确的。

第10行:

utc1Time=new Date(localTime.getTime() + (localTime.getTimezoneOffset() + 120) * 60000);

在将客户端时间转换为UTC时间后,该+ 120将增加2小时,这使其成为UTC+1,然后添加DST偏移量。您需要添加一些方法来检查DST是否有效,类似于utc1Time.toString().match(/daylight/i)

但我将把它留给您,因为这可能是一个足够的框架供您构建。

希望这能有所帮助:D

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

https://stackoverflow.com/questions/19008701

复制
相关文章

相似问题

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