Javascript 在用户'中显示倒计时;s当地时间

Javascript 在用户'中显示倒计时;s当地时间,javascript,datetime,timezone,Javascript,Datetime,Timezone,我想实现一个简单的javascript倒计时,它总是倒计时到用户的本地时间下周五15:00。我目前使用以下代码,但我相信它只显示下周五15:00 UTC的倒计时。任何帮助都将不胜感激 var-curday; var-secTime; var-ticker; 函数getSeconds(){ var nowDate=新日期(); var dy=5;//周日到周六,0到6 var countertime=新日期(nowDate.getFullYear(),nowDate.getMonth(),now

我想实现一个简单的javascript倒计时,它总是倒计时到用户的本地时间下周五15:00。我目前使用以下代码,但我相信它只显示下周五15:00 UTC的倒计时。任何帮助都将不胜感激

var-curday;
var-secTime;
var-ticker;
函数getSeconds(){
var nowDate=新日期();
var dy=5;//周日到周六,0到6
var countertime=新日期(nowDate.getFullYear(),nowDate.getMonth(),nowDate.getDate(),15,0,0);
var curtime=nowDate.getTime();//当前时间
var atime=countertime.getTime();//倒计时时间
var diff=parseInt((atime-curtime)/1000);
如果(差异>0){
curday=dy-nowDate.getDay()
}否则{
curday=dy-nowDate.getDay()-1
}//倒计时后
如果(curday<0){
curday+=7;
}//已经过了倒计时时间,切换到下周
如果(差异0){
扇区时间--;
}否则{
清除间隔(股票代码);
getSeconds();//重新开始
}
变量天数=数学下限(秒/86400);
secs%=86400;
var小时=数学楼层(秒/3600);
秒%=3600;
var mins=数学层(秒/60);
secs%=60;
//更新时间显示
document.getElementById(“天”).innerHTML=curday;
document.getElementById(“小时”).innerHTML=((小时数<10)?“0”:“)+小时数;
document.getElementById(“分钟”).innerHTML=((分钟<10)?“0”:“)+分钟;
document.getElementById(“秒”).innerHTML=((秒<10)?“0”:“)+secs;
}
函数启动器(){
getSeconds();

}
Javascript日期本质上是UTC,但是各种非UTC get和set方法都基于主机系统时钟和夏令时设置在本地日期和时间上工作

因此,如果您不使用UTC方法,OP中的所有内容在默认情况下都是“本地”的。以下是对“下周五15:00之前的时间”的简化实现,所有这些都是本地值:

函数timeUntil(){
让我们现在=新日期();
//创建下周五15:00的日期
星期五=新日期(现在);
星期五。设定时间(15,0,0,0);
让dayNum=friday.getDay();
星期五.setDate(星期五.getDate()+5-(dayNum<6?dayNum:5-dayNum));
//如果今天是星期五,15:00之后,设置为下星期五
如果(dayNum==5&&friday
td{
文本对齐:居中;
}

DaysHrsMinsSecs

startTimer
中,改用此函数ref<代码>股票代码=设定区间(勾号,1000)