我有一个javascript倒计时器,通过采取指定的日期和时间,并将其与当前日期和时间进行比较.问题是,当前时间是相对于用户时区的,因此用户之间的剩余时间不同.
如何将计时器倒计时到特定时区的时间,在我的情况下,GMT -5小时?
我知道我可以使用下面的代码来获取用户的时区,但我迷失了如何使用它.
myDateObj.getTimezoneOffset()/ 60
快速搜索显示:使用此javascript将本地时间转换为另一个时区
文章逐字逐句为您提供以下示例:
var d = new Date();
var localTime = d.getTime();
var localOffset = d.getTimezoneOffset() * 60000;
var utc = localTime + localOffset;
// obtain and add destination's UTC time offset
// for example, Bombay
// which is UTC + 5.5 hours
var offset = 5.5;
var bombay = utc + (3600000*offset);
var nd = new Date(bombay);
alert("Bombay time is " + nd.toLocaleString() + "<br>");
Run Code Online (Sandbox Code Playgroud)
jsFiddle:http://jsfiddle.net/GEpaH/
只需使用您想要的偏移进行更新,您应该全部设置好.
您可以使用 Date.UTC(year,month,day,hours,minutes,seconds,msec)
它的操作与Date构造函数类似,但返回格林威治时间(offset = 0)而不是本地时间的参数的时间戳.
var localtime=new Date(Date.UTC(year,month,day,hours,minutes,seconds,msec))
Run Code Online (Sandbox Code Playgroud)
返回指定UTC时间的本地时间.
每个人(时钟设置正确)将一起结束倒计时.