【发布时间】:2015-02-11 00:09:00
【问题描述】:
我正在使用两个 js 库来获取浏览器时区 ID 和浏览器本地时间
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jstimezonedetect/1.0.4/jstz.min.js"></script>
<script src="Scripts/moment-timezone.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
var tz = jstz.determine(); // Determines the time zone of the browser client
alert(tz.name());
alert(moment.tz(tz.name()).format());
});
</script>
下面的代码返回完美的时区 id
var tz = jstz.determine(); // Determines the time zone of the browser client
alert(tz.name());
但是这段代码不起作用alert(moment.tz(tz.name()).format());没有给用户本地时间。
我在代码中遗漏了什么吗?我需要添加任何与momentjs相关的其他文件吗?
请指导我。我想使用 moment.js 获取用户本地时间。谢谢
更新工作版本
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
<script type="text/javascript" src="Scripts/jstz.min.js"></script>
<script src="Scripts/moment.min.js" type="text/javascript"></script>
<script src="Scripts/moment-timezone-with-data-2010-2020.min.js" type="text/javascript"></script>
</head>
<body>
<form method="post" action="WebForm1.aspx" id="form1">
<div>
<script type="text/javascript">
$(document).ready(function () {
var tz = jstz.determine(); // Determines the time zone of the browser client
alert(tz.name());
var format = 'YYYY/MM/DD HH:mm:ss ZZ';
alert(moment.tz('Europe/London').format(format));
alert(moment.tz(tz.name()).format(format));
});
</script>
</div>
</form>
</body>
</html>
【问题讨论】:
-
当我添加这两个 js 文件的那一刻,我的代码就开始工作了cdnjs.cloudflare.com/ajax/libs/moment.js/2.6.0/moment.min.jsmomentjs.com/downloads/…
-
我只是想知道这个数据文件 moment-timezone-with-data-2010-2020.min.js 是否包含所有时区的所有信息?
-
浪费了 2 个小时搜索如何从 moment_timezone 获取本地区域名称,您的解决方案正在运行。
-
告诉我你的问题解决了吗?
标签: javascript momentjs localtime