timezone - 在 moment.js 中选择默认时区

标签 timezone momentjs

我以以下方式包含 moment.js

<script src="../static/js/moment-timezone-full.js"></script>
<script>
    $('.select_timezone').timezones();
</script>

然后我在 html 中将时区选择提供给我的用户
<div class="row">
    <div class="col-lg-4">
        <select class="select_timezone" name="select_timezone"></select>
    </div>
</div>

我的问题是如何选择默认时区?我看到有人可以做到这一点
moment.tz.setDefault(String);

但我不明白这在我的设置中是如何工作的?

编辑:我的实现只是按照这个例子......

http://www.jqueryscript.net/time-clock/Easy-Timezone-Picker-with-jQuery-Moment-js-Timezones.html

真的没有人知道解决方案吗?
卡尔

编辑:我应该澄清为什么 moment.tz.setDefault 不起作用。当我添加行时
moment.tz.setDefault('America/Los_Angeles');

我收到了 javascript 错误
Uncaught TypeError: Cannot read property 'setDefault' of undefined

我包括在 flask super 教程中解释的时刻,意思是我做的
from flask.ext.moment import Moment
...
moment = Moment()
...
moment.init_app(app)

在我的 html 模板中我做了
{% block scripts %}
{{ moment.include_moment() }}
{% endblock %}

moment-timezones 包含在 js 文件中,如上所示。我是不是忘记了什么?
我只是想为选择设置默认时区

最佳答案

查看您发布的内容后,您似乎正在使用来自 https://github.com/firstandthird/timezones 的 jquery 插件。当我查看代码时,它使用旧版本的 moment.js(版本 2.8.3),如 https://github.com/firstandthird/timezones/blob/master/dist/timezones.full.js 所示。

它还使用旧版本的 moment-timezone(它在 timezones.full.js 文件的底部拉入,版本 0.2.4)并且 moment.tz.setDefault() 直到更高版本才添加.目前最新的版本是 0.4.0。因此,我建议将您自己的文件与最新版本混合在一起,然后在您的系统上再次尝试,看看它是否有效。

更新:

所以,我看了你的 fiddle ,并在 your fiddle 更新了它。允许

moment.tz.setDefault("America/New_York");
$('.select_timezone').timezones();

用我自己混合的 moment.js、moment-timezone.js 和 jquery 插件代码,它工作得很好。基本上,moment-timezone-full.js 文件所做的就是将 moment.js 和 moment-timezone.js 与 jquery 插件代码混合在一起。 (它被列为外部库之一,您也可以在 https://gist.github.com/iron-man/deedd9efe988318d842a 找到它。我确实注意到它只会选择该偏移量列表中的第一个时区,而不是您指定的实际时区,但是是 moment-timezone.js 库的一个更大问题,超出了这个问题的范围。

关于timezone - 在 moment.js 中选择默认时区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32147182/

相关文章:

angular - 如何使用 Angular Material 中的力矩更改日期选择器表单控件值格式

javascript - 如何从 MomentJS 获取 DST 金额

javascript - 如何仅使用月份名称来使用 MomentJS 设置完整日期?

php - 计算日期时间集之间的总时间

javascript - 在 momentjs 中显示没有年份的长日期格式

postgresql - Postgres 数据库中特殊的时区处理

java - 时区 CEST 至 GMT

php显示错误的日期

php - 在 PHP 中将 DateTime 字符串转换为不同的时区

node.js - Node.js 从哪里获取时区数据?