首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JS中的时间函数

问JS中的时间函数
EN

Stack Overflow用户
提问于 2020-07-15 01:37:21
回答 2查看 66关注 0票数 1

我正在尝试创建一个JS函数,在周一到周五上午11:00之前和周一到周五下午03:00:00之后隐藏HTML元素,并在周六和周日全天隐藏该元素。这是我到目前为止所拥有的。我想我快到了,但是时间非常棘手。这里我漏掉了什么?谢谢!!

代码语言:javascript
复制
jQuery(function() {
/* your code here */
// days of the week
 var d = new Date();
 var weekday = new Array(7);
 weekday[0] = "Sunday";
 weekday[1] = "Monday";
 weekday[2] = "Tuesday";
 weekday[3] = "Wednesday";
 weekday[4] = "Thursday";
 weekday[5] = "Friday";
 weekday[6] = "Saturday";

 var n = weekday[d.getDay()];

// Gather Time
var startTime = "11:00:00 AM";
var endTime = "03:00:00 PM"
var hour   = d.getHours();
var minute = d.getMinutes();
var second = d.getSeconds();
var ap = "AM";
if (hour   > 11) { ap = "PM";             }
if (hour   > 12) { hour = hour - 12;      }
if (hour   == 0) { hour = 12;             }
if (hour   < 10) { hour   = "0" + hour;   }
if (minute < 10) { minute = "0" + minute; }
if (second < 10) { second = "0" + second; }
var currentTime = hour + ':' + minute + ':' + second + " " + ap;  
 
if(n == "Monday" || n == "Tuesday" || n == "Wednesday" || n == "Thursday" || n == "Friday")  {
 if(startTime > currentTime && currentTime < endTime){
jQuery( "div.rpress_fooditem[data-term-id='2']" ).css({"display":"none"});
}}
else
 jQuery( "div.rpress_fooditem[data-term-id='2']" ).css({"display":"block"});
 alert("other day");


 return currentTime;
});
EN

回答 2

Stack Overflow用户

发布于 2020-07-15 02:01:18

您正在比较字符串,以决定是否,而不是实际日期...

代码语言:javascript
复制
var startTime = "11:00:00 AM";
var endTime = "03:00:00 PM"
var currentTime = hour + ':' + minute + ':' + second + " " + ap;
if(startTime > currentTime && currentTime < endTime)

更新

我会使用Date,然后我会相应地更改startDate和endDate的小时和分钟,而对于currentTime,我不会更改任何内容。我希望这是有意义的。

更新2

真正的问题是我们在哪种日期进行操作?我们是使用UTC还是取决于用户的时区(取自浏览器)。如果答案是“基于时区”,那么我会建议你使用像momentjs这样的库,或者类似的东西,因为由于“夏季时间”的改变可以改变超时,你需要更新该信息的库。我不会详细说明这一点,你可以研究一下谷歌到底有什么问题。

票数 1
EN

Stack Overflow用户

发布于 2020-07-21 22:52:58

所以我能够计算出使用12小时格式,我使用24小时格式,并转换成字符串,它工作得很好!谢谢你的帮助

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

https://stackoverflow.com/questions/62900866

复制
相关文章

相似问题

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