好吧,这快把我逼疯了。
我正在尝试对某个时区中的某一天进行倒计时。一旦计时器达到零,它就会改变倒计时计时器的标题,并在不同的时区倒计时到一周中的另一天。
基本上,我需要它来显示星期六在某个时区开始的时间...当它是星期六我需要它倒计时当星期天开始在不同的时区…
这个想法是,这两个时区是国际日期变更线两边最早和最晚的时区……,所以"it's星期六某处,表示n天/小时/分/秒“而不是"it‘t be星期六,in n天/小时/分/秒”--实际上是“星期六某处”,表示50个小时。
我相信现在是我所在时区的周五凌晨3点到周日凌晨5点之间,所以这就是“现在是周六的某个地方”的边界--这还没有考虑到夏令时的变化。
另一个问题是,查看倒计时器的人不会都在我的时区……所以我在想,我可能需要对它进行设置,以便对时区偏移进行一些计算。
我觉得我想太多了。我已经选择了我的代码到死,我只想有一个干净的石板来从头开始解决这个问题。
任何帮助都将不胜感激。
发布于 2018-09-30 07:07:37
根据上面的评论,这是我想出来的…为了弄清楚到底发生了什么。(编辑:已更正...)
var currentTime = new Date().valueOf();
var wktime = currentTime/604800000;
wktime -= Math.floor(wktime);
wktime *= 604800000;
wktime -= 122400000;//milliseconds from zero time to the original saturday, so 0 is the start of saturday.
var lengthOfSaturday = (24+12+14)*60*60*1000; //just to make the math clear
if (wktime > lengthOfSaturday) {
var msToNextSaturday = wktime-lengthOfSaturday;
} else {
var timeLeftSaturday = lengthOfSaturday-wktime;
}
https://stackoverflow.com/questions/52572785
复制相似问题