toLocaleTimeString()返回24小时或12小时的时间
toLocaleTimeString() returns 24hr or 12hr time?
据我所知,我的代码工作得很好(尽管作为业余编码员,我愿意改进),但是我办公室里有一台机器似乎和其他所有机器都不一样。
在那台PC上,我的脚本可以在FireFox上运行,但在Chrome上不行。
代码:[根据一天中的时间以及是周末还是工作日,它隐藏或显示两个div]
var d = new Date();
var t = d.toLocaleTimeString();
var day = d.getDay()%6;
if (t < "08:30:00" || t > "17:30:00" || day == 0 ) {
document.getElementById("div1").style.display = "none";
document.getElementById("div2").style.display = "inline";
} else {
document.getElementById("div1").style.display = "inline";
document.getElementById("div2").style.display = "none";
}
我面临的问题是在Chrome上这台特定的计算机它是错误的,显示/隐藏相反的div应该显示/隐藏。
我的问题:
我计算时间是否正确/使用了正确的函数等等?
我的方法与现代相当最新的浏览器兼容吗?
谢谢。
toLocaleTimeString()
将在不同的语言环境中有另一个实现。你不应该用它来查看时间。仅用于向用户显示时间。
你可能想看看这个
您可以使用getHours()
和getMinutes()
来检查时间。
你也可以这样做:
var t1 = new Date(d);
t1.setHours(8);
t1.setMinutes(30);
t1.setSeconds(0);
var t2= new Date(d);
t2.setHours(17);
t2.setMinutes(30);
t2.setSeconds(0);
var day = d.getDay()%6;
if (d < t1 || d > t2 || day == 0 ) {
document.getElementById("div1").style.display = "none";
document.getElementById("div2").style.display = "inline";
} else {
document.getElementById("div1").style.display = "inline";
document.getElementById("div2").style.display = "none";
}
相关文章:
- 如何将24小时的日期时间格式转换为12小时的格式
- 如何在jQuery日期时间选择器中添加12小时格式
- 在 javascript 中将 24 小时时间转换为 12 小时,运行秒数
- 整小时和小数小时双精度值转换为 12 小时制格式时间
- 将滑块的 24 小时时间格式转换为 12 小时
- JavaScript 格式化时间 24 小时格式为 12 小时
- 如何使用正则表达式(正则表达式)验证 12 小时时间
- 使用 javascript 检测用户的机器使用的是 12 小时制(上午/下午)还是 24 小时制(军事时间)
- 如何将用户限制为仅输入 12 小时的时间,包括 AM 和 PM
- 12 小时时间格式的正则表达式
- 纪元时间相差 12:小时
- 以12小时格式显示时间
- JQuery输入12小时时间格式的掩码
- 需要12小时格式而不显示AM/PM时间选择器
- 如何使用javascript将时间从24小时格式转换为12小时格式
- 角度带日期选择器:返回不一致的时间戳,UTC+0与UTC+12小时
- 显示12小时和24小时时间
- 使用javascript将12小时时间格式转换为24小时格式
- jQuery jqPlot库12小时时间Y轴反演问题
- 如何使用Javascript将24小时时间更改为12小时时间