Javascript时间if语句8.30am
我有一个名为showbanner()的javascript函数,该函数用于根据我们的开放时间更改图像的src。它很好地工作了很长时间Javascript时间if语句8.30am,javascript,Javascript,我有一个名为showbanner()的javascript函数,该函数用于根据我们的开放时间更改图像的src。它很好地工作了很长时间 function showbanner() { now = new Date(); t = now.getUTCHours(); m = now.getUTCMinutes(); if (t>9 && t<17) document.getElementById('theImg').src="/Img/O
function showbanner() {
now = new Date();
t = now.getUTCHours();
m = now.getUTCMinutes();
if (t>9 && t<17) document.getElementById('theImg').src="/Img/Open.png";
else document.getElementById('theImg').src="/Img/Closed.png";
}
函数showbanner(){
现在=新日期();
t=now.getUTCHours();
m=now.getUTCMinutes();
if(t>9&&t8&&t30)&&t函数showbanner(){
var now=新日期();
var t=now.getUTCHours();
var m=now.getUTCMinutes();
如果((t>8 | | t==8&&mfunction showbanner(){
var now=新日期();
var t=now.getUTCHours();
var m=now.getUTCMinutes();
如果((t>8 | | t===8&&m尝试此方法(将8:30转换为510秒,并检查(t*60)+m是否大于此值):
函数showbanner(){
现在=新日期();
t=now.getUTCHours();
m=now.getUTCMinutes();
如果((t*60)+m>510&&t尝试此方法(将8:30转换为510秒,并检查(t*60)+m是否大于510秒):
函数showbanner(){
现在=新日期();
t=now.getUTCHours();
m=now.getUTCMinutes();
如果((t*60)+m)>510&&t您可以创建一个变量,以军用时间格式存储时间
function showbanner() {
var now = new Date();
var t = now.getUTCHours();
var m = now.getUTCMinutes();
var mil = 100*t+m; // Military time
if (mil >= 830 && mil <= 1700) { // Between 8:30 AM and 5:00 PM
document.getElementById('theImg').src="/Img/Open.png";
} else {
document.getElementById('theImg').src="/Img/Closed.png";
}
}
函数showbanner(){
var now=新日期();
var t=now.getUTCHours();
var m=now.getUTCMinutes();
var mil=100*t+m;//军事时间
如果(mil>=830&&mil,您可以创建一个变量,以军用时间格式存储时间
function showbanner() {
var now = new Date();
var t = now.getUTCHours();
var m = now.getUTCMinutes();
var mil = 100*t+m; // Military time
if (mil >= 830 && mil <= 1700) { // Between 8:30 AM and 5:00 PM
document.getElementById('theImg').src="/Img/Open.png";
} else {
document.getElementById('theImg').src="/Img/Closed.png";
}
}
函数showbanner(){
var now=新日期();
var t=now.getUTCHours();
var m=now.getUTCMinutes();
var mil=100*t+m;//军事时间
如果(mil>=830&&milt>8&&t<9
对所有t
都为假。不要忘记用var
!!!@delan声明所有局部变量,仅对整数t进行声明。如果t只是一个实数,则开放范围(8,9)中的任何值都匹配。想象一下,其中t表示“分数小时”。(在发布的代码中没有,但我对这个评论很迂腐;-)t>8&&t<9
对所有t
都是假的。不要忘记用var
!!!@delan声明所有局部变量,只对整数t。如果t只是一个实数,那么开放范围(8,9)中的任何值都匹配。想象一下t代表什么“分数小时”。(在发布的代码中没有,但我对这个评论有点迂腐;-)-1表示无法阅读的幻数510,代码中没有任何注释。@Sebastian:我想你错过了我帖子的第一行,上面说8:30秒转换为510。@Cybernate:我修改了我的注释。最有可能的是,接受的答案会直接复制到网站上;如果代码部分照样复制,那就太不真实了可读。@Sebastian:我不确定SO中提供的答案是用于直接复制粘贴,还是用于提供解决问题的思路。@Cybernate:也许不是,但我的-1代表代码原样,-1代表非常不可读的幻数510,代码中没有任何注释。@Sebastian:我想你错过了我文章的第一行,上面写着c8:30到10秒的时间是510。@Cybernate:我修改了我的评论。最有可能的是,被接受的答案会直接复制到网站上;如果代码部分按原样复制,它将非常不可读。@Sebastian:我不确定SO中提供的答案是用于直接复制粘贴还是用于解决问题。@Cybernate:Perhaps不是,但是我的-1支持代码的原样。+1因为…在所有的答案中,它实际上简化了问题。但是,我会将t/v/mil生成移到另一个函数,比如,getUTCInMilitary
或诸如此类。这完全消除了第一条注释的需要;-)谢谢。正如你所说,这确实简化了问题。一个相关的方法是将小时数分成分数,例如:h>=8.5
@pst,我不确定这是否有效?getUTCHours()不是吗只返回整小时?@Matt:他所指的方法大致如下:var h=t+m/60.0
;+1因为……在所有的答案中,它实际上简化了问题。然而,我会将t/v/mil生成转移到另一个函数,比如说,getUTCInMilitary
或诸如此类。这样就不需要fir了st注释全部;-)谢谢。正如你所说,这确实简化了问题。一个相关的方法是将小时分数,例如:h>=8.5
@pst,我不确定这是否有效?getUTCHours()不是只返回整个小时吗?@Matt:他指的方法大致如下:var h=t+m/60.0
;
function showbanner() {
now = new Date();
t = now.getUTCHours();
m = now.getUTCMinutes();
if (((t*60) + m) >510 && t<17)
document.getElementById('theImg').src="/Img/Open.png";
else
document.getElementById('theImg').src="/Img/Closed.png";
}
function showbanner() {
var now = new Date();
var t = now.getUTCHours();
var m = now.getUTCMinutes();
var mil = 100*t+m; // Military time
if (mil >= 830 && mil <= 1700) { // Between 8:30 AM and 5:00 PM
document.getElementById('theImg').src="/Img/Open.png";
} else {
document.getElementById('theImg').src="/Img/Closed.png";
}
}