我的默认时间采用以下格式: 19 Jul : 7:00pm CST

当用户访问显示该时间的页面时,我希望根据用户的本地时间将其转换为正确的时间。

有任何想法吗?

谢谢

===============>>#1 票数:0 已采纳

首先,您需要输出您希望它出现的日期,但是一定要指定其时区(我在这里使用GMT,但您可以使用UTC等)。 然后将其与本地负载交换掉(如果提供了原始时区,则由JavaScript自动处理)。

<div id="timestamp">April 21, 2014 6:00 pm GMT</div>
<script type="text/javascript">
    var timestamp = document.getElementById('timestamp'),
        t         = new Date(timestamp.innerHTML),
        hours     = t.getHours(), 
        min       = t.getMinutes() + '', 
        pm        = false,
        months    = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];

    if(hours > 11){
       hours = hours - 12;
       pm = true;
    }

    if(hours == 0) hours = 12;
    if(min.length == 1) min = '0' + min;

    timestamp.innerHTML = months[t.getMonth()] + ' ' + t.getDate() + ', ' + t.getFullYear() + ' ' + hours + ':' + min + ' ' + (pm ? 'pm' : 'am');
</script>

===============>>#2 票数:0

你可以玩.toLocaleTimeString()

.toLocaleString()方法使用语言环境设置将Date对象转换为字符串。

var d = new Date();
var n = d.toLocaleString();

有关日期对象的更多信息

  ask by Dan P. translate from so

未解决问题?本站智能推荐: