在Javascript模拟时钟中使用矩时区

在Javascript模拟时钟中使用矩时区,javascript,Javascript,无法使时间时区在模拟时钟上工作。想让时钟显示洛杉矶时间。时钟使用“newdate()”而不是“moment.tz(“America/Los_Angeles”)”工作正常。使用文本格式时钟时,库可以正常工作 JS var canvas=document.getElementById(“时钟”); var ctx=canvas.getContext(“2d”); 变量半径=画布高度/2; 平移(半径,半径); 设置间隔(时钟,1000); 函数drawClock(){ ctx.clearRect(

无法使时间时区在模拟时钟上工作。想让时钟显示洛杉矶时间。时钟使用“newdate()”而不是“moment.tz(“America/Los_Angeles”)”工作正常。使用文本格式时钟时,库可以正常工作

JS

var canvas=document.getElementById(“时钟”);
var ctx=canvas.getContext(“2d”);
变量半径=画布高度/2;
平移(半径,半径);
设置间隔(时钟,1000);
函数drawClock(){
ctx.clearRect(-radius,-radius,canvas.width,canvas.height);
图纸编号(ctx、半径);
拉深时间(ctx,半径);
}
功能图纸编号(ctx、半径){
瓦朗;
var-num;
ctx.font=14+“px arial”;
ctx.textb基线=“中间”;
ctx.textAlign=“中心”;
对于(num=1;num<13;num++){
ang=num*Math.PI/6;
ctx.旋转(ang);
平移(0,-半径*0.80);
ctx.旋转(-ang);
ctx.fillText(num.toString(),0,0);
ctx.旋转(ang);
平移(0,半径*0.80);
ctx.旋转(-ang);
}
}
函数绘制时间(ctx,半径){
var timestamp=moment.tz(“美国/洛杉矶”);
var hour=timestamp.getHours();
var minute=timestamp.getMinutes();
var second=timestamp.getSeconds();
//时辰
小时=小时%12;
小时=(小时*数学PI/6)+
(分钟*数学PI/(6*60))+
(第二个*数学PI/(360*60));
拉手(ctx,小时,半径*0.5,半径*0.07);
//分钟
分钟=(分钟*数学PI/30)+(秒*数学PI/(30*60));
拉手(ctx,分钟,半径*0.7,半径*0.07);
}
功能drawHand(ctx、位置、长度、宽度){
ctx.beginPath();
ctx.lineWidth=宽度;
ctx.lineCap=“圆形”;
ctx.moveTo(0,0);
ctx.旋转(位置);ctx.直线至(0,-长度);
ctx.stroke();
ctx.旋转(-pos);
}

当使用
time
时,您要查找的函数不是
getHours
getMinutes
getSeconds
,而只是
hours
minutes
seconds

var timestamp = moment.tz("America/Los_Angeles");
var hour = timestamp.hours();
var minute = timestamp.minutes();
var second = timestamp.seconds();
以下是对代码的更新:

var canvas=document.getElementById(“时钟”);
var ctx=canvas.getContext(“2d”);
变量半径=画布高度/2;
平移(半径,半径);
设置间隔(时钟,1000);
函数drawClock(){
ctx.clearRect(-radius,-radius,canvas.width,canvas.height);
图纸编号(ctx、半径);
拉深时间(ctx,半径);
}
功能图纸编号(ctx、半径){
瓦朗;
var-num;
ctx.font=14+“px arial”;
ctx.textb基线=“中间”;
ctx.textAlign=“中心”;
对于(num=1;num<13;num++){
ang=num*Math.PI/6;
ctx.旋转(ang);
平移(0,-半径*0.80);
ctx.旋转(-ang);
ctx.fillText(num.toString(),0,0);
ctx.旋转(ang);
平移(0,半径*0.80);
ctx.旋转(-ang);
}
}
函数绘制时间(ctx,半径){
var timestamp=新日期();
var timestamp=moment.tz(“美国/洛杉矶”);;
var hour=timestamp.hours();
var minute=timestamp.minutes();
var second=timestamp.seconds();
//时辰
小时=小时%12;
小时=(小时*数学PI/6)+
(分钟*数学PI/(6*60))+
(第二个*数学PI/(360*60));
拉手(ctx,小时,半径*0.5,半径*0.07);
//分钟
分钟=(分钟*数学PI/30)+(秒*数学PI/(30*60));
拉手(ctx,分钟,半径*0.7,半径*0.07);
}
功能drawHand(ctx、位置、长度、宽度){
ctx.beginPath();
ctx.lineWidth=宽度;
ctx.lineCap=“圆形”;
ctx.moveTo(0,0);
ctx.旋转(位置);ctx.直线至(0,-长度);
ctx.stroke();
ctx.旋转(-pos);
}

var timestamp = moment.tz("America/Los_Angeles");
var hour = timestamp.hours();
var minute = timestamp.minutes();
var second = timestamp.seconds();