我正在尝试使用 moment.js 和 moment-timezone.js 让用户能够更改到他们本地的时区。但是我在使用 moment-timezone.js 时遇到了一些困难。我以他们为榜样,但无论我选择哪个时区,它总是给我本地时间。这是我的代码:
<html>
<head>
<title>Test</title>
<script src='scripts/jquery.min.js'></script>
<script src="scripts/moment.js"></script>
<script src="scripts/moment-timezone.js"></script>
<script src="scripts/moment-timezone-with-data.js"></script>
</head>
<body>
<span id="time">
</span>
<script>
$(document).ready(function(){
var dhaka = moment.tz("2015-09-01 12:00", "Asia/Dhaka");
var newYork = dhaka.clone().tz("America/New_York");
var losAngeles = dhaka.clone().tz("America/Los_Angeles");
var london = dhaka.clone().tz("America/Los_Angeles");
$('#time').html('Dhaka: ' + dhaka.format() + "<BR>New York: " + newYork.format() + "<br>Los Angeles: " + losAngeles.format() + "<br>London: " + london.format());
})
</script>
</body>
我的输出是:
Dhaka: 2015-09-01T12:00:00+00:00
New York: 2015-09-01T12:00:00+00:00
Los Angeles: 2015-09-01T12:00:00+00:00
London: 2015-09-01T12:00:00+00:00
我做错了什么吗?为什么它不起作用?
最佳答案
<html>
<head>
<title>Test</title>
<script src='https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0-alpha1/jquery.js'></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.6/moment.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.4.0/moment-timezone-with-data.min.js"></script>
</head>
<body>
<span id="time">
</span>
<script>
$(document).ready(function(){
var dhaka = moment.tz("2015-09-01 12:00", "Asia/Dhaka");
var newYork = dhaka.clone().tz("America/New_York");
var losAngeles = dhaka.clone().tz("America/Los_Angeles");
var london = dhaka.clone().tz("America/Los_Angeles");
$('#time').html('Dhaka: ' + dhaka.format() + "<BR>New York: " + newYork.format() + "<br>Los Angeles: " + losAngeles.format() + "<br>London: " + london.format());
})
</script>
</body>
</html>
这是 jsfiddle 链接 - https://jsfiddle.net/fgvr1rgL/
关于javascript - 无法使 moment-timezone.js 工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32516964/